Envíos gratis en compras superiores a $70.000
Inicio/Profesional/TICs y Computación/Programación/Desarrollo Interfaces Gráficas en Python 3 con Tkinter

Desarrollo Interfaces Gráficas en Python 3 con Tkinter

$40.205

  • Envío gratis en compras superiores a $70.000
  • Autor: Tomás Domínguez Mínguez

    Páginas: 478

    Editorial: Alfaomega – Marcombo

    ISBN: 9788426733405 Categoría:

    Descripción

    Las interfaces de usuario son el punto de interacción entre las aplicaciones y las personas que las utilizan. Aunque su función se centra en la entrada y salida de información, muchas veces determinan el éxito o el fracaso de un programa, ya que, por muy interesante que este sea, si resulta difícil de manejar, provocará un rechazo que desanime incluso a probarlo.

    Es probable que las aplicaciones que haya desarrollado con Python hasta ahora se limiten a un intercambio de información con el usuario en modo texto. Con la lectura de este libro adquirirá los conocimientos necesarios para dotarlas de una interfaz gráfica, con el fin de hacerlas más amigables, atractivas y fáciles de usar.

    Aunque en Python existen diferentes paquetes para conseguir este propósito, se ha elegido Tkinter por ser su librería estándar. Tanto es así, que viene con el propio entorno de desarrollo. En este libro aprenderá todo lo necesario para trabajar con esta librería, ya que le permitirá:
    » Descubrir los controles gráficos proporcionados por Tkinter, como etiquetas, botones, menús, campos de entrada de texto, etc. Con ellos podrá crear otros más elaborados, como barras de menús, barras de tareas o formularios, entre otros muchos. Naturalmente, podrá configurar el aspecto de cada uno de ellos, como el tamaño, el color, el tipo de fuente y cualquier otro rasgo que exhiban.
    » Utilizar cuadros de diálogo para abrir o guardar archivos, elegir un color o dar mensajes informativos al usuario, de los que se podría esperar una respuesta.
    » Situar cada uno de los elementos gráficos en una ventana según el diseño deseado, para conformar de esta forma el aspecto visual de la interfaz.
    » Establecer el comportamiento de cada uno de los componentes gráficos, determinando la respuesta que deben dar a cualquier evento al que quiera que respondan. De esta forma, podrán moverse por la pantalla, aparecer o desaparecer, y cambiar de tamaño, color o cualquier otra de sus características.
    » Conocer los controles gráficos del módulo ttk, que adaptan su apariencia a la del sistema operativo en el que se ejecutan (Windows, MacOS o Linux).
    Todos los conceptos introducidos irán seguidos de ejemplos que demostrarán cómo llevarlos a la práctica. Además, los programas utilizados se explican línea a línea para que no queden dudas sobre su funcionamiento.

    El libro parte de un nivel básico de Python, pero, si no conoce este lenguaje o quiere refrescar sus conocimientos, se proporciona un amplio anexo en el que se enseñan sus principios básicos de funcionamiento, con el fin de que pueda seguir sin problemas las prácticas propuestas.

    No espere más, hágase con su ejemplar y proporcione a sus aplicaciones el diseño y la funcionalidad que merecen.

    Tomás Domínguez es ingeniero de telecomunicación y doctorado en inteligencia artificial. Su labor profesional se ha desarrollado en una multinacional de telecomunicaciones, donde ha ocupado diversos cargos relacionados con la tecnología. Asimismo, ha ejercido como profesor universitario de ingeniería informática en la Universidad Alfonso X el Sabio de Madrid.

    TABLA DE CONTENIDO

    1. INTRODUCCIÓN 1
    1.1 Qué es Tkinter……………………………………………………………………………….3
    1.2 Su primera interfaz de usuario con Tkinter ……………………………………4

    2. LA VENTANA PRINCIPAL 7

    3. POSICIONAMIENTO Y DISEÑO 13
    3.1 El gestor de geometría pack ………………………………………………………….13
    3.2 El gestor de geometría grid …………………………………………………………..21
    3.3 El gestor de geometría place …………………………………………………………28

    4. OPCIONES COMUNES 31
    4.1 Dimensiones ……………………………………………………………………………….32
    4.2 Color ……………………………………………………………………………………………33
    4.3 Fuente …………………………………………………………………………………………36
    4.4 Foco …………………………………………………………………………………………….38
    4.5 Posición……………………………………………………………………………………….41
    4.6 Relieve ………………………………………………………………………………………..43
    4.7 Imágenes …………………………………………………………………………………….45
    4.8 Cursor del ratón …………………………………………………………………………..47

    5. MÉTODOS COMUNES 49
    5.1 Asignación y obtención de valores de atributos ……………………………50
    5.2 Temporizadores ……………………………………………………………………………51
    5.3 Gestión del foco …………………………………………………………………………..55
    5.4 Manejo de dimensiones y posiciones …………………………………………..61

    6. VARIABLES DE CONTROL 67

    7. WIDGETS 73
    7.1 Label y Message ………………………………………………………………………….74
    7.1.1 Opciones y métodos ……………………………………………………………74
    7.1.2 Práctica ………………………………………………………………………………76
    7.2 Button …………………………………………………………………………………………78
    7.2.1 Opciones y métodos ……………………………………………………………79
    7.2.2 Práctica ………………………………………………………………………………80
    7.3 Entry …………………………………………………………………………………………..86
    7.3.1 Opciones y métodos ……………………………………………………………86
    7.3.2 Práctica ………………………………………………………………………………89
    7.4 Spinbox ………………………………………………………………………………………93
    7.4.1 Opciones y métodos ……………………………………………………………93
    7.4.2 Práctica ………………………………………………………………………………95
    7.5 Listbox ……………………………………………………………………………………… 102
    7.5.1 Opciones y métodos ………………………………………………………… 102
    7.5.2 Práctica …………………………………………………………………………… 106
    7.6 Menús ……………………………………………………………………………………… 109
    7.6.1 Menú ………………………………………………………………………………. 109
    7.6.2 OptionMenu …………………………………………………………………… 120
    7.6.3 Menubutton ……………………………………………………………………. 127
    7.7 Cuadros de diálogo …………………………………………………………………… 134
    7.7.1 colorchooser …………………………………………………………………… 135
    7.7.2 messagebox …………………………………………………………………….. 137
    7.7.3 filedialog …………………………………………………………………………. 141
    7.8 Text ………………………………………………………………………………………….. 142
    7.8.1 Opciones y métodos ………………………………………………………… 142
    7.8.2 Práctica …………………………………………………………………………… 147
    7.9 Scrollbar …………………………………………………………………………………… 155
    7.9.1 Opciones y métodos ………………………………………………………… 155
    7.9.2 Práctica …………………………………………………………………………… 157
    7.10 Toplevel………………………………………………………………………………….. 158
    7.10.1 Opciones y métodos ……………………………………………………… 159
    7.10.2 Práctica …………………………………………………………………………. 159
    7.11 Frame y LabelFrame ……………………………………………………………….. 164
    7.11.1 Opciones y métodos ……………………………………………………… 164
    7.11.2 Práctica …………………………………………………………………………. 165
    7.12 PanedWindow ………………………………………………………………………… 170
    7.12.1 Opciones y métodos ……………………………………………………… 171
    7.12.2 Práctica …………………………………………………………………………. 172
    7.13 Checkbutton y RadioButton …………………………………………………… 178
    7.13.1 Opciones y métodos ……………………………………………………… 179
    7.13.2 Prácticas ……………………………………………………………………….. 181
    7.14 Canvas……………………………………………………………………………………. 196
    7.14.1 Opciones y métodos ……………………………………………………… 196
    7.14.2 Objetos gráficos …………………………………………………………….. 203
    7.15 Scale ………………………………………………………………………………………. 230
    7.15.1 Opciones y métodos ……………………………………………………… 230
    7.15.2 Práctica …………………………………………………………………………. 232

    8. VALIDACIÓN DE ENTRADAS DE DATOS 237

    9. EVENTOS 243
    9.1 Vinculación de eventos con widgets ………………………………………….. 243
    9.2 Secuencias de eventos ……………………………………………………………… 245
    9.3 Controladores de eventos …………………………………………………………. 248
    9.4 Prácticas …………………………………………………………………………………… 250
    9.4.1 Control del tamaño de la ventana ……………………………………. 250
    9.4.2 Atajos de teclado …………………………………………………………….. 253
    9.4.3 Editor gráfico ………………………………………………………………….. 256

    10. EL MÓDULO TTK 271
    10.1 Temas y estilos ……………………………………………………………………….. 272
    10.2 Estado ……………………………………………………………………………………. 278
    10.3 Opciones comunes …………………………………………………………………. 281
    10.4 Métodos comunes ………………………………………………………………….. 283
    10.5 Adaptación de una aplicación Tkinter a ttk …………………………….. 283
    10.6 Widgets específicos de ttk ……………………………………………………….. 289
    10.6.1 Combobox …………………………………………………………………….. 290
    10.6.2 Notebook ………………………………………………………………………. 293
    10.6.3 Progressbar ……………………………………………………………………. 309
    10.6.4 Separator ………………………………………………………………………. 315
    10.6.5 Sizegrip …………………………………………………………………………. 316

    11. ANEXO A. FUNDAMENTOS DE PYTHON 319
    11.1 Entorno de desarrollo …………………………………………………………….. 321
    11.1.1 Instalación ……………………………………………………………………. 321
    11.1.2 Descripción general ………………………………………………………. 327
    11.2 Sintaxis básica de Python ……………………………………………………….. 330
    11.3 Variables ………………………………………………………………………………… 331
    11.4 Tipos de datos básicos ……………………………………………………………. 332
    11.4.1 Números ……………………………………………………………………….. 333
    11.4.2 Cadenas de caracteres …………………………………………………… 334
    11.4.3 Booleanos ……………………………………………………………………… 341
    11.4.4 Conversión de tipos ………………………………………………………. 341
    11.5 Operadores …………………………………………………………………………….. 342
    11.6 Estructuras de control …………………………………………………………….. 344
    11.6.1 if…else …………………………………………………………………………. 345
    11.6.2 while …………………………………………………………………………….. 348
    11.6.3 for …………………………………………………………………………………. 350
    11.7 Estructuras de datos ……………………………………………………………….. 353
    11.7.1 Listas …………………………………………………………………………….. 353
    11.7.2 Tuplas …………………………………………………………………………… 360
    11.7.3 Conjuntos …………………………………………………………………….. 361
    11.7.4 Diccionarios ………………………………………………………………….. 364
    11.8 Entrada de datos de usuario ……………………………………………………. 370
    11.9 El depurador de código de Python…………………………………………… 370
    11.10 Funciones …………………………………………………………………………….. 376
    11.11 Alcance de las variables ………………………………………………………… 382
    11.12 Clases y objetos ……………………………………………………………………. 385
    11.12.1 Herencia ……………………………………………………………………… 388
    11.13 Módulos ……………………………………………………………………………….. 393
    11.14 Threads ………………………………………………………………………………… 399
    11.15 Ficheros ……………………………………………………………………………….. 403
    11.16 Excepciones………………………………………………………………………….. 412
    11.17 Práctica. Aplicación de gestión de clientes ……………………………. 414

    12. ANEXO B. UNA ÚLTIMA PRÁCTICA 431
    12.1 Módulo gestión de clientes …………………………………………………….. 432
    12.2 Interfaz de usuario …………………………………………………………………. 436
    12.2.1 Funciones del menú “Archivo” ………………………………………. 450
    12.2.2 Funciones del menú “Operaciones” ……………………………….. 451
    12.2.3 Funciones del menú “Ayuda” …………………………………………. 465

    Ir a Arriba