PyQt5 - Hallo Welt

Das Erstellen einer einfachen GUI-Anwendung mit PyQt umfasst die folgenden Schritte:

  • Importieren Sie die Module QtCore, QtGui und QtWidgets aus dem PyQt5-Paket.

  • Erstellen Sie ein Anwendungsobjekt der QApplication-Klasse.

  • Ein QWidget-Objekt erstellt ein Fenster der obersten Ebene. Fügen Sie ein QLabel-Objekt hinzu.

  • Stellen Sie die Beschriftung des Labels als "Hallo Welt" ein.

  • Definieren Sie die Größe und Position des Fensters mit der Methode setGeometry ().

  • Geben Sie den Hauptschleifen der Anwendung durch ein app.exec_() Methode.

Es folgt der Code zum Ausführen des Hello World-Programms in PyQt -

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
def window():
   app = QApplication(sys.argv)
   w = QWidget()
   b = QLabel(w)
   b.setText("Hello World!")
   w.setGeometry(100,100,200,50)
   b.move(50,20)
   w.setWindowTitle("PyQt5")
   w.show()
   sys.exit(app.exec_())
if __name__ == '__main__':
   window()

Der obige Code erzeugt die folgende Ausgabe -

Es ist auch möglich, eine objektorientierte Lösung des obigen Codes zu entwickeln.

  • Importieren Sie die Module QtCore, QtGui und QtWidgets aus dem PyQt5-Paket.

  • Erstellen Sie ein Anwendungsobjekt der QApplication-Klasse.

  • Deklarieren Sie die Fensterklasse basierend auf der QWidget-Klasse

  • Fügen Sie ein QLabel-Objekt hinzu und setzen Sie die Beschriftung des Labels auf "Hallo Welt".

  • Definieren Sie die Größe und Position des Fensters mit der Methode setGeometry ().

  • Geben Sie den Hauptschleifen der Anwendung durch ein app.exec_() Methode.

Es folgt der vollständige Code der objektorientierten Lösung -

import sys
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
class window(QWidget):
   def __init__(self, parent = None):
      super(window, self).__init__(parent)
      self.resize(200,50)
      self.setWindowTitle("PyQt5")
      self.label = QLabel(self)
      self.label.setText("Hello World")
      font = QFont()
      font.setFamily("Arial")
      font.setPointSize(16)
      self.label.setFont(font)
      self.label.move(50,20)
def main():
   app = QApplication(sys.argv)
   ex = window()
   ex.show()
   sys.exit(app.exec_())
if __name__ == '__main__':
   main()