PyQt5 - Hello World

Tworzenie prostej aplikacji GUI przy użyciu PyQt obejmuje następujące kroki -

  • Importuj moduły QtCore, QtGui i QtWidgets z pakietu PyQt5.

  • Utwórz obiekt aplikacji klasy QApplication.

  • Obiekt QWidget tworzy okno najwyższego poziomu. Dodaj do niego obiekt QLabel.

  • Ustaw podpis etykiety jako „Witaj, świecie”.

  • Zdefiniuj rozmiar i położenie okna za pomocą metody setGeometry ().

  • Wejdź do głównego pętli aplikacji przez app.exec_() metoda.

Poniżej znajduje się kod do wykonania programu Hello World w 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()

Powyższy kod daje następujące dane wyjściowe -

Możliwe jest również opracowanie zorientowanego obiektowo rozwiązania powyższego kodu.

  • Importuj moduły QtCore, QtGui i QtWidgets z pakietu PyQt5.

  • Utwórz obiekt aplikacji klasy QApplication.

  • Zadeklaruj klasę okna na podstawie klasy QWidget

  • Dodaj obiekt QLabel i ustaw tytuł etykiety jako „hello world”.

  • Zdefiniuj rozmiar i położenie okna za pomocą metody setGeometry ().

  • Wejdź do głównego pętli aplikacji przez app.exec_() metoda.

Poniżej znajduje się pełny kod rozwiązania zorientowanego obiektowo -

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()