ventanas gui funcion for etiquetas español ejemplos python user-interface layout tkinter ttk

gui - tkinter python 3



¿Cuándo utilizar paquetes o diseños de cuadrícula en tkinter? (3)

¿Hay algunos consejos de mejores prácticas con respecto a cuándo se debe usar paquete frente a cuadrícula para sus diseños?

Por lo que he estado leyendo a través de Google, el punto de vista parece ser que la cuadrícula puede manejar cualquier escenario de paquete, pero no al revés.

Para iniciar la conversación, parece que un caso de uso que favorece la cuadrícula frente al paquete es cuando uno quiere mostrar / ocultar los widgets.


Ninguno es intrínsecamente mejor que el otro. Cada uno tiene sus fortalezas y debilidades. Aprender qué son y la elección de cuál usar se vuelve obvio.

grid es considerablemente más fácil de usar si necesita colocar las cosas en una cuadrícula. pack es generalmente más fácil de usar si todo lo que necesita hacer es colocar algunos widgets en una sola fila o en una sola columna. Hay una gran cantidad de áreas grises intermedias donde ninguna es necesariamente mejor que la otra.

La otra cosa a considerar es lo que dijo en su pregunta: si desea mostrar y ocultar widgets en tiempo de ejecución, la grid es probablemente la mejor opción debido al método grid_remove que recuerda los valores de todos los atributos configurados en caso de que desea volver a agregar el widget.

Personalmente, mi primera opción siempre es usar el pack porque primero aprendí Tk cuando no había un comando de grid . Si no puedo hacerlo fácilmente en el pack , o si estoy colocando las cosas claramente en una cuadrícula, usaré grid .


Personalmente, creo que es mucho más fácil trabajar con grid, así que lo usaría. Por supuesto, es probable que haya leído que lo único que nunca debería hacer es tratar de usar ambos al mismo tiempo en el mismo contenedor. Gracias Bryan Oakley por hacer esa distinción.


Siempre recomiendo grid over pack para aplicaciones pulidas. Solo hay unos pocos casos en los que el paquete es más fácil y se ajusta a la factura (todo en una fila o columna). la cuadrícula tiene una mejor "composibilidad" (por ejemplo, megavidgets o elementos de cuadrícula de elementos de cuadrícula). Las razones para preferir la cuadrícula son las opciones de ajuste fino adicionales que proporciona. El uso del peso (que afecta el crecimiento y la reducción de peso), reduce el tamaño y el tamaño máximo, así como funciones de conveniencia como imponer filas / columnas uniformes.

Una aplicación completamente cuadriculada de cualquier tamaño usará (significativamente) menos marcos que una aplicación empaquetada equivalente, y tendrá un mejor control de contracción / expansión sobre los elementos internos.

Por cierto, tanto el paquete como la cuadrícula pueden mostrar / ocultar subelementos, aunque la sintaxis difiere ligeramente entre los dos. La cuadrícula es un poco mejor porque ''eliminar'' (en lugar de ''olvidar'') recordará las opciones de cuadrícula en el widget esclavo.