Python - Programación GUI (Tkinter)
Página anteriorPágina siguiente
Python proporciona varias opciones para desarrollar interfaces gráficas de usuario (GUI). Los más importantes se enumeran a continuación.
-
Tkinter − Tkinter es la interfaz de Python para el kit de herramientas GUI de Tk que se envía con Python. Veríamos esta opción en este capítulo.
-
wxPython − Esta es una interfaz Python de código abierto para wxWindows http://wxpython.org.
-
JPython − JPython es un puerto de Python para Java que brinda a los scripts de Python un acceso fluido a las bibliotecas de clases de Java en la máquina local http://www.jython.org.
Hay muchas otras interfaces disponibles, que puede encontrar en la red.
Programación Tkinter
Tkinter es la biblioteca GUI estándar para Python. Python, cuando se combina con Tkinter, proporciona una forma rápida y fácil de crear aplicaciones GUI. Tkinter proporciona una poderosa interfaz orientada a objetos para el kit de herramientas Tk GUI.
Crear una aplicación GUI usando Tkinter es una tarea fácil. Todo lo que necesita hacer es realizar los siguientes pasos −
-
Importar el Tkinter módulo.
-
Cree la ventana principal de la aplicación GUI.
-
Agregue uno o más de los widgets mencionados anteriormente a la aplicación GUI.
-
Ingrese al bucle de eventos principal para tomar medidas contra cada evento activado por el usuario.
Ejemplo
#!/usr/bin/python import Tkinter top = Tkinter.Tk() # Code to add widgets will go here... top.mainloop()
Esto crearía una ventana siguiente −
Widgets de Tkinter
Tkinter proporciona varios controles, como botones, etiquetas y cuadros de texto utilizados en una aplicación GUI. Estos controles se denominan comúnmente widgets.
Actualmente hay 15 tipos de widgets en Tkinter. Presentamos estos widgets, así como una breve descripción en la siguiente tabla −
Sr.No. | Operador y descripción |
---|---|
1 | Botón El widget Botón se usa para mostrar botones en su aplicación. |
2 | Lienzo El widget Canvas se usa para dibujar formas, como líneas, óvalos, polígonos y rectángulos, en su aplicación. |
3 | Botón de verificación El widget de botón de verificación se utiliza para mostrar una serie de opciones como casillas de verificación. El usuario puede seleccionar varias opciones a la vez. |
4 | Entrada El widget de entrada se usa para mostrar un campo de texto de una sola línea para aceptar valores de un usuario. |
5 | Marco El widget Frame se usa como un widget contenedor para organizar otros widgets. |
6 | Etiqueta El widget Etiqueta se utiliza para proporcionar un título de una sola línea para otros widgets. También puede contener imágenes. |
7 | Cuadro de lista El widget Listbox se utiliza para proporcionar una lista de opciones a un usuario. |
8 | Botón de menú El widget Menubutton se usa para mostrar menús en su aplicación. |
9 | Menú El widget de menú se utiliza para proporcionar varios comandos a un usuario. Estos comandos están contenidos dentro del botón Menú. |
10 | Mensaje El widget de mensaje se usa para mostrar campos de texto de varias líneas para aceptar valores de un usuario. |
11 | botón de radio El widget de botón de radio se utiliza para mostrar una serie de opciones como botones de radio. El usuario puede seleccionar solo una opción a la vez. |
12 | Escala El widget de escala se utiliza para proporcionar un widget de control deslizante. |
13 | Barra de desplazamiento El widget de barra de desplazamiento se usa para agregar capacidad de desplazamiento a varios widgets, como cuadros de lista. |
14 | Texto El widget de texto se utiliza para mostrar texto en varias líneas. |
15 | Nivel superior El widget de nivel superior se utiliza para proporcionar un contenedor de ventana independiente. |
16 | Cuadro giratorio El widget Spinbox es una variante del widget de entrada estándar de Tkinter, que se puede usar para seleccionar entre un número fijo de valores. |
17 | Ventana en panel Una PanedWindow es un widget contenedor que puede contener cualquier cantidad de paneles, dispuestos horizontal o verticalmente. |
18 | Marco de etiqueta Un marco de etiqueta es un widget de contenedor simple. Su propósito principal es actuar como espaciador o contenedor para diseños de ventanas complejos. |
19 | tkMessageBox Este módulo se utiliza para mostrar cuadros de mensajes en sus aplicaciones. |
Estudiemos estos widgets en detalle −
Atributos estándar
Echemos un vistazo a cómo se especifican algunos de sus atributos comunes, como tamaños, colores y fuentes.
-
Dimensiones
-
Colores
-
Fuentes
-
Anclajes
-
Estilos de relieve
-
Mapas de bits
-
Cursores
Estudiémoslos brevemente −
Gestión de geometría
Todos los widgets de Tkinter tienen acceso a métodos de administración de geometría específicos, que tienen el propósito de organizar los widgets en el área de widgets principal. Tkinter expone las siguientes clases de administrador de geometría:paquete, cuadrícula y lugar.
-
El paquete() Método:este administrador de geometría organiza los widgets en bloques antes de colocarlos en el widget principal.
-
La cuadrícula() Método:este administrador de geometría organiza los widgets en una estructura similar a una tabla en el widget principal.
-
El lugar() Método:este administrador de geometría organiza los widgets colocándolos en una posición específica en el widget principal.
Estudiemos brevemente los métodos de gestión de la geometría −
python