Flashcards de Interfaces Gráficas con PyQt6

0.0(0)
Studied by 0 people
call kaiCall Kai
Locked
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
GameKnowt Play
Card Sorting

1/25

flashcard set

Earn XP

Description and Tags

Conjunto de flashcards diseñadas para repasar los conceptos fundamentales de interfaces gráficas de usuario utilizando PyQt6, cubriendo desde widgets básicos hasta diseño modular y manejo de múltiples ventanas.

Last updated 7:17 PM on 6/26/26
Name
Mastery
Learn
Test
Matching
Spaced
Call with Kai
Chat

No analytics yet

Send a link to your students to track their progress

26 Terms

1
New cards

¿Qué es la arquitectura basada en eventos en las interfaces modernas?

Es un modelo donde el programa reacciona a acciones del usuario, como clics o presión de teclas, ejecutando una función asociada llamada handler o manejador, en lugar de seguir una secuencia fija.

2
New cards

¿Cuál es la función principal del módulo QtWidgets en PyQt6?

Contener los elementos gráficos clásicos necesarios para construir la interfaz, como QWidget, QPushButton, QLabel, QLineEdit y QApplication.

3
New cards

¿Qué tipos de herramientas incluye el módulo QtGui?

Incluye herramientas relacionadas con imágenes, colores, fuentes, eventos del teclado y mouse, e integración gráfica.

4
New cards

¿Por qué es obligatorio ejecutar super().init() en una clase que hereda de QWidget?

Porque inicializa correctamente la parte de la clase padre (QWidget) que tiene la ventana; sin esta línea, el objeto gráfico podría no quedar inicializado correctamente.

5
New cards

¿Qué significan los cuatro parámetros en el método setGeometry(x, y, ancho, alto)?

Los dos primeros (xx e yy) indican la posición de la esquina superior izquierda de la ventana en la pantalla, y los otros dos definen el ancho y el alto en píxeles.

6
New cards

¿Cuál es la restricción principal respecto a la instancia de QApplication?

Debe existir una sola instancia de QApplication por programa y debe crearse antes de construir cualquier widget.

7
New cards

¿Qué sucede cuando se ejecuta app.exec()?

Se inicia el event loop o ciclo principal de eventos, deteniendo el flujo lineal de Python para esperar y procesar clics, teclas o señales internas hasta que la aplicación termina.

8
New cards

¿Cómo funciona el sistema de coordenadas en PyQt?

El origen (0,00, 0) está en la esquina superior izquierda; el eje xx aumenta hacia la derecha y el eje yy aumenta hacia abajo.

9
New cards

¿Cuál es la diferencia entre move(x, y) y setGeometry(x, y, ancho, alto)?

move(x, y) cambia solamente la posición del widget, mientras que setGeometry permite definir tanto la posición como el tamaño simultáneamente.

10
New cards

¿Qué objeto se utiliza para cargar y representar una imagen en PyQt6 antes de mostrarla en un QLabel?

Se utiliza un objeto QPixmap, que se importa desde el módulo QtGui.

11
New cards

¿Para qué sirve el símbolo & en el texto de un QPushButton?

Establece una tecla de acceso rápido o mnemónico (por ejemplo, Alt + la letra siguiente al símbolo) para activar el botón mediante el teclado.

12
New cards

¿Cuál es la ventaja de usar layouts (QHBoxLayout, QVBoxLayout) en lugar de posicionamiento absoluto?

Los layouts administran automáticamente la posición y tamaño de los widgets según el espacio disponible y el sistema operativo, permitiendo que el contenido se redistribuya al redimensionar la ventana.

13
New cards

¿Qué hace el método addStretch(numero) en un layout?

Agrega espacio flexible que se reparte proporcionalmente según el peso indicado, empujando los widgets hacia una dirección específica.

14
New cards

¿Cómo se distribuyen los widgets en un QGridLayout?

Mediante filas y columnas que comienzan desde cero, usando el método addWidget(widget, fila, columna).

15
New cards

¿Qué es una señal (Signal) y un slot en PyQt?

Una señal es una notificación de que algo ocurrió (como un clic) y un slot es la función o método que se ejecuta automáticamente en respuesta a esa señal.

16
New cards

¿Por qué no se deben usar paréntesis al conectar una señal con un slot, como en boton.clicked.connect(self.metodo)?

Porque se debe entregar el objeto función para que PyQt lo ejecute más adelante; usar paréntesis ejecutaría la función inmediatamente durante la conexión.

17
New cards

¿Qué retorna el método self.sender()?

Retorna el objeto que emitió la señal que actualmente está siendo procesada por el slot.

18
New cards

¿Qué se debe activar para que mouseMoveEvent detecte el movimiento del cursor sin necesidad de presionar un botón?

Se debe activar el seguimiento del mouse con el método self.setMouseTracking(True).

19
New cards

¿Cuál es la diferencia entre event.text() y event.key() en un evento de teclado?

event.text() retorna el carácter o texto asociado a la tecla, mientras que event.key() retorna un código numérico que identifica la tecla física (útil para teclas especiales).

20
New cards

¿Cómo se define una señal personalizada que transporta un dato de tipo texto?

Se declara como atributo de clase usando pyqtSignal(str), importado desde QtCore.

21
New cards

En el diseño Front-end y Back-end, ¿cuál es la responsabilidad del Backend?

Contener la lógica interna, algoritmos, validación y procesamiento de datos sin conocer los detalles de los elementos gráficos de la interfaz.

22
New cards

En el contexto de código PyQt, ¿qué es la cohesión?

Es el grado en que los métodos de una clase trabajan para un mismo objetivo; una clase con alta cohesión separa tareas visuales de la lógica de procesamiento.

23
New cards

En el contexto de código PyQt, ¿qué es el acoplamiento?

Representa cuánto depende una parte del programa de otra; el uso de señales ayuda a lograr un bajo acoplamiento al permitir la comunicación sin llamadas directas constantes.

24
New cards

¿Por qué una segunda ventana puede desaparecer inmediatamente si se crea dentro de un método como una variable local?

Porque al terminar la ejecución del método, la variable local desaparece y Python elimina el objeto de memoria al no quedar referencias permanentes que lo mantengan vivo.

25
New cards

¿Cuál es la diferencia entre los métodos hide() y close()?

hide() oculta la ventana pero la mantiene en memoria (se puede reutilizar con show()), mientras que close() solicita el cierre formal de la ventana.

26
New cards

¿Por qué se recomienda declarar señales como atributos de clase y no dentro de init?

Por diseño interno de PyQt, para que funcionen correctamente dentro del mecanismo de metadatos de Qt que gestiona las conexiones entre objetos.