Mi primer ejercicio con Tkinter

Iniciado por xiquipython, 8 Febrero 2019, 20:03 PM

0 Miembros y 1 Visitante están viendo este tema.

xiquipython

Emepze con Tkinter i aproveche un script de dar informacion i con un boton de salida, pero mi texto es demasiado grande para el tamaño i no consigo ver como hacer mas grande la ventana sin interferir a los botones. Alguien sabria como verlo mas grande.


https://jordixicarspython.wordpress.com/2019/02/08/prueba-con-tkinter/

EdePC

#1
Saludos,

- Por defecto, la ventana toma el tamaño adecuado para contener a los elementos que albergue. Entonces no deberías de darle un tamaño fijo a esta, solo deberías de fijar los tamaños de los elementos contenidos dentro.

- Luego, si quieres que el elemento Text tenga un ancho que se adecúe al ancho del String más largo, en este caso la primera línea de text_info, puedes contar su tamaño con: len(texto_info[:texto_info.find("\n")])

Código (python) [Seleccionar]
from tkinter import *
from tkinter import ttk

class Aplicacion():

 def __init__(self):
   self.raiz = Tk()
   # self.raiz.geometry('300x200')
   self.raiz.resizable(width=False,height=False)
   self.raiz.title('Informacion sobre el mes')
   self.tinfo = Text(self.raiz, width=40, height=10)
   self.tinfo.pack(side=TOP)
   self.binfo = ttk.Button(self.raiz, text='Informacion', command=self.verinfo)
   self.binfo.pack(side=LEFT)
   self.bsalir = ttk.Button(self.raiz, text='Salir', command=self.raiz.destroy)
   self.bsalir.pack(side=RIGHT)
   self.binfo.focus_set()
   self.raiz.mainloop()

 def verinfo(self):
   self.tinfo.delete("1.0", END)

   info1 = "###Jano, dios de los portales. January en Inglés###"
   info2 = "###Mes de las hogueras purificatorias (februa)###"
   info3 = "###Marte, dios de la guerra###"
   info4 = "###Aprilis o Apertura de flores(primavera)###"
   info5 = "###Maia, diosa de la abundancia###"
   info6 = "###Juno, diosa del hogar y la familia###"
   info7 = "###Por Julio cesar###"
   info8 = "###Por Octavio Augusto###"
   info9 = "###Septimo mes###"
   info10 = "###Octavo mes###"
   info11 = "###Noveno mes###"
   info12 = "###Decimo mes###"

   texto_info = "(Enero:) " + info1 + "\n\n"
   texto_info += "(Febrero:) " + info2 + "\n\n"
   texto_info += "(Marzo:) " + info3 + "\n\n"
   texto_info += "(Abril:) " + info4 + "\n\n"
   texto_info += "(Mayo:) " + info5 + "\n\n"
   texto_info += "(Junio:) " + info6 + "\n\n"
   texto_info += "(Julio:) " + info7 + "\n\n"
   texto_info += "(Agosto:) " + info8 + "\n\n"
   texto_info += "(Septiembre:)" + info9 + "\n\n"
   texto_info += "(Octubre:) " + info10 + "\n\n"
   texto_info += "(Noviembre:) " + info11 + "\n\n"
   texto_info += "(Diciembre:) " + info12 + "\n\n"

   self.tinfo.insert("1.0", texto_info)
   self.tinfo.config( width=len(texto_info[:texto_info.find("\n")]) )

def main():
 mi_app = Aplicacion()
 return 0

if __name__ == '__main__':
 main()

xiquipython

#2
Garcias, entre tu explicaicon i lo que e ido provando e consido fijarlo a mis necessidades


https://likegeeks.com/es/ejemplos-de-la-gui-de-python/


Estoy aprendiendo cada mes esto de Tkinter aqui os ajunto mi nueva creacion:

https://jordixicarspython.wordpress.com/2019/02/09/ejercicio-6-pestanas-con-los-meses/


MOD: No hacer triple post. Usa el botón modificar.