0 calificaciones0% encontró este documento útil (0 votos)
2 vistas23 páginas
Este documento presenta una sesión sobre diseño de interfaces gráficas en Python usando la biblioteca PyQt5. Explica conceptos como widgets, QtDesigner y diferentes tipos de widgets como botones, cuadros combinados y tablas. También incluye ejemplos de cómo implementar widgets para casos como conversión de monedas y un sistema CRUD para clientes. El objetivo es que los estudiantes aprendan a diseñar interfaces gráficas aplicando los conceptos y herramientas revisados.
Este documento presenta una sesión sobre diseño de interfaces gráficas en Python usando la biblioteca PyQt5. Explica conceptos como widgets, QtDesigner y diferentes tipos de widgets como botones, cuadros combinados y tablas. También incluye ejemplos de cómo implementar widgets para casos como conversión de monedas y un sistema CRUD para clientes. El objetivo es que los estudiantes aprendan a diseñar interfaces gráficas aplicando los conceptos y herramientas revisados.
Este documento presenta una sesión sobre diseño de interfaces gráficas en Python usando la biblioteca PyQt5. Explica conceptos como widgets, QtDesigner y diferentes tipos de widgets como botones, cuadros combinados y tablas. También incluye ejemplos de cómo implementar widgets para casos como conversión de monedas y un sistema CRUD para clientes. El objetivo es que los estudiantes aprendan a diseñar interfaces gráficas aplicando los conceptos y herramientas revisados.
datos y POO en Python José Luis Ttito Quispe Docente - Instructor
SESION 06 OBJETIVO
• Conocer, aprender y Diseñar
formularios mediante el uso de propiedades y métodos de clases contenidas en la librería PyQt5 a través del lenguaje de programación Python. LOGRO
• Seguiremos diseñando nuevas
interfaces aplicando diseñando y ejecutando interfaces gráficas de usuario aceptables • Revisaremos los principales componentes o widgets de comando mas utilizados durante la etapa desarrollo. AGENDA • Explorando QtDesigner cont... • Nuestro segundo proyecto • Revisión del tema de listas, diccionarios y tuplas. • Uso de componentes: • ComboBox • TableWidget • Calendar DESAFÍO N° 01
• Caso CRUD de Clientes
• Puedes ingresar lo siguiente: • Cargar información desde una BD • Insertar nuevos clientes • Eliminar clientes • Modificar la información QUE ES PyQt5 • Es un binding o traductor de la biblioteca gráfica QT para el LP Python. • Permite crear GUI’s de manera rápida y sencilla, con la legibilidad del código de Python • Además que también posee una interfaz de diseño para crear nuestras interfaces gráficas. • Ya que si has utilizado Tkinter sabrás de lo forzoso que es tener que ir El conjunto de implementaciones que permiten codificar este lenguaje, con el objeto de crear una diseñando y programando a la vez. interfaz independiente. Es llamado “LIBRERÍA” QUE ES QtDesigner • Qt Designer es una herramienta para crear rápidamente interfaces gráficas de usuario con widgets del marco Qt GUI . • Le brinda una interfaz simple de arrastrar y soltar para diseñar componentes como botones, campos de texto, cuadros combinados y más. • Qt Designer produce (*.ui). Este es un formato especial basado en XML que almacena sus widgets como un árbol. Los Widgets son objetos que nos permiten representar o visualizar los datos de forma interactiva WIDGET • Es un elemento de la GUI que ilustra información de una forma para que el usuario interactúe con el SO. • Cada widget por separado es un objeto de Python. Al crear un widget, debe pasar su padre como parámetro a la función de creación del widget. • La única excepción es la ventana "raíz", que es la ventana de nivel superior que contendrá todo lo demás y no tiene un padre. WIDGETS en Qt Designer • Existen muchos, pero los mas representativos son: • Layouts : Posicionamiento dentro del lienzo. • Buttons : representar elementos que funcionan con un click. • Ítems views : Representar datos o elementos de lista. • Containers : Representar la organización de los widgets. • Inputs : Elementos que podemos ingresar datos. • Displays : Elementos gráficos mas elaborados. WIDGETS BUTTONS • Se utiliza para agregar botones a su aplicación. • Entre los mas utilizados tenemos los siguientes: • Push Button • Tool Button • Radio Button • Check Box • Command Link Button • Dialog Button Box WIDGETS INPUTS • Permite al usuario editar texto de una o varias líneas y formatear la forma en que debe mostrarse • Combo Box • Line Edit • Text Edit • Spin Box • Date Edit • Time Edit y muchos mas WIDGETS QCOMBOBOX • Presenta una lista desplegable de elementos para seleccionar. • Se necesita un espacio de pantalla mínimo en el formulario requerido para mostrar solo el elemento seleccionado actualmente. • Se puede configurar un cuadro combinado para que sea editable; también puede almacenar objetos de mapa de píxeles. • Los siguientes métodos se usan comúnmente: METODOS QCOMBOBOX • addItem() Agrega cadena a la colección • addItems() Agrega elementos en un objeto de lista • Clear() Elimina todos los elementos de la colección. • count() Recupera el número de elementos de la colección. • currentText() Recupera el texto del elemento actualmente seleccionado • itemText() Muestra texto perteneciente a un índice específico • currentIndex() Devuelve el índice del elemento seleccionado • setItemText() Cambia el texto del índice especificado WIDGETS QDATE EDIT • Presenta una lista desplegable de elementos para seleccionar. • Permite al usuario editar fechas usando el teclado o las teclas de flecha para aumentar y disminuir los valores de fecha y hora. • Las teclas de flecha se pueden usar para moverse de una sección a otra. Las fechas y horas aparecen de acuerdo con el formato establecido. • Los siguientes métodos se usan comúnmente: METODOS QDATE EDIT • setDisplayFormat() Configura el formato ejem dd/mm/yyyy • setCalendarWidget() Devuelve el widget de calendario para el editor si calendarPopup se establece en verdadero y (sections() & DateSections_Mask ) != 0. Esta función crea y devuelve un widget de calendario si no se ha configurado ninguno. • Setdate() registra el dato de fecha en el widget (setText) WIDGETS ITEM-BASED • Se utiliza para agregar botones a su aplicación. • Entre los mas utilizados tenemos los siguientes: • List Widget • Tree Widget • Table Widget WIDGETS TABLEWIDGET • Una tabla se utiliza para mostrar datos en un formato estructurado, según filas y columnas. • El contenido de la tabla se puede generar a partir de diferentes tipos de almacenamiento, como listas o tablas bidimensionales, tablas de base de datos, archivos JSON, etc. • Se pueden crear una o más tablas usando QTableWidget en la aplicación PyQt. METODOS TABLEWIDGET • setRowCount() Se utiliza para definir el número de filas. • setColumnCount() Se utiliza para definir el número de columnas. • setHorizontalHeaderLabels() Se utiliza para establecer las etiquetas de encabezado de la tabla. • setItem() Se utiliza para establecer el valor de celda de la tabla. • resizeColumnsToContents() Se utiliza para cambiar el tamaño de las columnas de la tabla según el contenido. • resizeRowsToContents() Se utiliza para cambiar el tamaño de las filas de la tabla según el contenido. • setMinimumWidth() Se utiliza para establecer el ancho mínimo de la mesa. • setMinimumHeight() Se utiliza para establecer la altura mínima de la mesa. • show() Se utiliza para mostrar la tabla. DEBEMOS CONSIDERAR QUE… • Para implementar uno o mas widgets debemos tomar en cuenta lo siguiente: • Cada widget maneja propiedades u métodos que permiten controlar su comportamiento (Diseño / Ejecución) • El tipo de dato también es importante debido a que cada uno de ellos manejan diferentes o solo un tipo de dato. • Investigar la documentación de cada widget para sacarle el máximo partido al momento del desarrollo. • Para que el desarrollo no sea tan complicado podemos hacer uso de herramientas vistas anteriormente tales como … WIDGETS: CASO 01 • Deseamos que el programa me pueda realizar tipo de cambio según nuestra necesidad: • Debe solicitar el monto • Solicitar la fecha de la operación • Seleccionar la moneda • Proceder al calculo • Informarnos por medio de mensajes. WIDGETS: CASO 02
• Caso CRUD de Clientes
• Puedes ingresar lo siguiente: • Cargar información BD. • Insertar nuevos clientes. • Eliminar clientes. • Modificar la información. CONCLUSIONES • Cuando vamos a desarrollar una solución, siempre vamos a tener que utilizar una interfaz de usuario ó GUI. Para que sea mas amigable al trabajo del usuario. • PyQt5 y QtDesigner, son herramientas, que nos permiten dibujar los componentes vistos en esta sesión de una forma mucho mas rápida. • Contamos con una cantidad de widgets para soportar cualquier necesidad. El programador deberá aplicar según sea necesario. • Esta sesión se ha proporcionado un paso adelante en el diseño de ventanas y componentes. Esto debería servirte para desarrollar algo básico ni bien a medida que abordas temas más complejos mas adelante.. PROXIMA CLASE VEREMOS…