Tomás Domínguez Mínguez - Desarrollo de interfaces gráficas en Python 3 con Tkinter

Здесь есть возможность читать онлайн «Tomás Domínguez Mínguez - Desarrollo de interfaces gráficas en Python 3 con Tkinter» — ознакомительный отрывок электронной книги совершенно бесплатно, а после прочтения отрывка купить полную версию. В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: unrecognised, на испанском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

Desarrollo de interfaces gráficas en Python 3 con Tkinter: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «Desarrollo de interfaces gráficas en Python 3 con Tkinter»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

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.

Desarrollo de interfaces gráficas en Python 3 con Tkinter — читать онлайн ознакомительный отрывок

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «Desarrollo de interfaces gráficas en Python 3 con Tkinter», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

El siguiente grupo de métodos está relacionado con el foco de un widget , es decir, con la entrada de datos por teclado:

•focus_get(). Devuelve el widget que tiene el foco en una aplicación. Si no lo tuviera ninguno, devolvería None.

•focus_set(). Pone el foco en un widget determinado.

•tk_focusFollowsMouse(). Fuerza que el foco esté donde se encuentre el ratón.

•tk_focusNext(). Devuelve el widget que sigue en la secuencia transversal del foco.

•tk_focusPrev(). Devuelve el widget que precede en la secuencia transversal del foco.

Desarrollo de interfaces gráficas en Python 3 con Tkinter - изображение 176

Recuerde que la secuencia transversal del foco está formada por los widgets por los que va pasando cuando se pulsa el tabulador.

La práctica que va a realizar en esta ocasión es un juego donde se muestra una ventana con cuatro campos. Al iniciar el programa, el foco se encuentra en el primer campo y, a partir de ese momento, cambia de forma aleatoria entre el de arriba y el de abajo. El objetivo es ser capaz de escribir correctamente una determinada palabra en todos ellos. Si se confundiera al añadir alguno de sus caracteres, el juego finalizaría, deshabilitándolos y mostrando un mensaje en color rojo que indicaría que el reto no ha sido conseguido. En caso contrario, el mensaje de acierto se mostraría en color verde.

El código del programa es el siguiente:

En primer lugar se importa todo aquello que se va a utilizar E - фото 177 En primer lugar se importa todo aquello que se va a utilizar En concreto de - фото 178 En primer lugar se importa todo aquello que se va a utilizar En concreto de - фото 179

En primer lugar, se importa todo aquello que se va a utilizar. En concreto, de Tkinter se va a necesitar la clase Tk para crear la ventana principal, Entry para los campos de texto y Label para los mensajes de éxito o fracaso. De la librería random se importa la función randint(), para generar números aleatorios:

Luego se declaran las variables de configuración La primera texto almacena - фото 180

Luego, se declaran las variables de configuración. La primera (texto) almacena el texto que deberá escribirse correctamente en todos los campos para completar el juego. La segunda (periodo) es el tiempo que permanecerá el foco en un campo antes de cambiar al siguiente. Cuanto menor sea su valor, en milisegundos, más dificultad entrañará el juego:

Salte la declaración de la función que se describirá más adelante hasta - фото 181

Salte la declaración de la función, que se describirá más adelante, hasta encontrar las sentencias en las que se crea la ventana principal (root); se le asigna un texto a su barra de título y se impide que pueda redimensionarse:

A continuación se crean los campos de texto campo1 campo2 campo3 y campo4 - фото 182

A continuación, se crean los campos de texto (campo1, campo2, campo3 y campo4). En ellos se establece la misma fuente (opción font), el mismo borde (opción bd) y, sobre todo, un marco de color rojo de dos píxeles de grosor para indicar cuándo tienen el foco (opciones highlightcolor y highlightthickness):

Una vez creados los campos se colocan verticalmente en la ventana principal - фото 183 Una vez creados los campos se colocan verticalmente en la ventana principal - фото 184

Una vez creados los campos, se colocan verticalmente en la ventana principal con el método pack(). El espacio entre ellos se fija con las opciones padx

Desarrollo de interfaces gráficas en Python 3 con Tkinter - изображение 185

La siguiente sentencia establece el foco en el primer campo (campo1), para lo que se hace uso de uno de los métodos descritos en esta sección: focus_set():

Desarrollo de interfaces gráficas en Python 3 con Tkinter - изображение 186

Por último, se comienza el juego invocando la función modifica_foco(), en cuyo único argumento se debe indicar el campo activo en ese momento, inicialmente campo1:

Ha llegado el momento de conocer el contenido de esta función En primer lugar - фото 187

Ha llegado el momento de conocer el contenido de esta función. En primer lugar, se declara la variable estado, cuyos valores indicarán si el juego está en curso (“EN CURSO”), o si se ha finalizado con éxito (“OK”) o con fracaso (“KO”). Cuando se invoca la función es porque, de momento, está en curso; de ahí que se asigne inicialmente dicho estado:

Después se obtiene el valor del campo actual el pasado como argumento - фото 188

Después, se obtiene el valor del campo actual (el pasado como argumento), utilizando el método get():

Las siguientes sentencias determinan si el juego ha terminado podrá ser con - фото 189

Las siguientes sentencias determinan si el juego ha terminado (podrá ser con éxito o con fracaso). Para ello, si los caracteres que hay escritos en dicho campo (texto_campo_actual) no coincidieran con los del texto de referencia (texto), el juego pasaría a un estado “KO” (más tarde se verá lo que se hace en este estado). En caso contrario, se comprobaría si el contenido de todos los campos coincide con el texto completo de referencia, en cuyo caso el juego pasaría a un estado “OK” (a continuación, descubrirá qué se hace en este otro estado):

Si el juego no hubiera terminado no se ha cumplido ninguna de las condiciones - фото 190

Si el juego no hubiera terminado (no se ha cumplido ninguna de las condiciones de los if anteriores), su estado seguiría siendo en “EN CURSO”, por lo que se cumpliría la condición del siguiente if, en el que se decide el campo al que tendría que pasar el foco. Para saber cuál es, se usa la función randint(), que devuelve aleatoriamente el número 0 o el 1 (equivalente a False y True). En función de dicho valor, se invocaría a la función tk_focusNext() o tk_focusPrev() para identificar el campo siguiente o el anterior al que tiene el foco actualmente. Una vez conocido dicho campo (nuevo_campo), se le asigna el foco con el método focus_set(). Por último, se invoca de nuevo a esta función con el método after() para continuar jugando:

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «Desarrollo de interfaces gráficas en Python 3 con Tkinter»

Представляем Вашему вниманию похожие книги на «Desarrollo de interfaces gráficas en Python 3 con Tkinter» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «Desarrollo de interfaces gráficas en Python 3 con Tkinter»

Обсуждение, отзывы о книге «Desarrollo de interfaces gráficas en Python 3 con Tkinter» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x