La clase QApplication administra el flujo de control y la configuración principal de la aplicación GUI. Se especializa en QGuiApplication con algunas funciones necesarias para las aplicaciones basadas en QWidget. Maneja la inicialización y finalización específicas del widget. Para cualquier aplicación GUI que use Qt, hay precisamente un objeto QApplication, sin importar si la aplicación tiene 0, 1, 2 o más ventanas en un momento dado. Para aplicaciones Qt no basadas en QWidget, use QGuiApplication en su lugar, ya que no depende de la biblioteca QtWidgets.
Luego creamos una instancia de ventana y ejecutamos el objeto QApplication en el bucle de eventos usando el comando sys.exit(App.exec()), a continuación se encuentran algunos métodos y propiedades útiles y frecuentes que se usan con el objeto QApplication.
Sintaxis: App = QApplication(sys.argv)
Parámetros:
- pitido: hace sonar el timbre, utilizando el volumen y el sonido predeterminados. Esta función no está disponible en Qt para Embedded Linux
- setFont: establece la fuente predeterminada de la aplicación PyQt5
- aboutQt: muestra un cuadro de mensaje simple sobre Qt. El mensaje incluye el número de versión de Qt que utiliza la aplicación.
- closeAllWindows: cierra todas las ventanas de nivel superior. Esta función es particularmente útil para aplicaciones con muchas ventanas de nivel superior.
- setAutoSipEnabled: muestra automáticamente el SIP al ingresar widgets que aceptan entrada de teclado
- setCursorFlashTime: este método establece el tiempo de parpadeo (parpadeo) del cursor de texto en milisegundos
- setDoubleClickInterval: este método establece el límite de tiempo en milisegundos que distingue un doble clic de dos clics de mouse consecutivos
Ejemplo:
Crearemos una aplicación PyQt5 simple que produce un pitido cuando se ejecuta y muchas propiedades se establecen en el objeto QApplication, a continuación se muestra la implementación
Python3
# importing libraries from PyQt5.QtWidgets import * from PyQt5 import QtCore, QtGui from PyQt5.QtGui import * from PyQt5.QtCore import * import sys class Window(QMainWindow): def __init__(self): super().__init__() # setting title self.setWindowTitle("Python ") # setting geometry self.setGeometry(100, 100, 500, 400) # calling method self.UiComponents() # showing all the widgets self.show() # method for components def UiComponents(self): # creating a push button push = QPushButton("Press", self) # setting geometry to the push button push.setGeometry(100, 100, 120, 40) # creating a label label = QLabel("GeeksforGeeks", self) # setting geometry to the label label.setGeometry(100, 160, 200, 50) # setting alignment to the label label.setAlignment(Qt.AlignCenter) # font font = QFont("Arial", 12) # setting font to the label label.setFont(font) # setting style sheet to the label label.setStyleSheet("QLabel" "{" "border : 2px solid green;" "background : lightgreen;" "}") # hiding the label label.hide() # adding action method to the push button push.clicked.connect(lambda: do_something()) # method called by the push button when pressed def do_something(): # unhide the label label.show() # create pyqt5 app App = QApplication(sys.argv) # setting cursor flashtime App.setCursorFlashTime(100) # setting application object name App.setObjectName("GfG") # setting application display name App.setApplicationDisplayName("GfG PyQt5") # beep sound will occur when application # is opened App.beep() # message displayed about the Qt App.aboutQt() # create the instance of our Window window = Window() # start the app sys.exit(App.exec())
Salida:
código en primer lugar, se mostrará la página acerca de Qt
Entonces nuestra aplicación comenzará
Publicación traducida automáticamente
Artículo escrito por rakshitarora y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA