PyQt5 je výkonný nástroj pro vytváření grafických rozhraní v Pythonu. S ním můžete snadno vytvářet okna, dialogová okna a další prvky uživatelského rozhraní.
Vytvoření okna v PyQt5 se může zdát jako obtížný úkol pro začátečníky, ale ve skutečnosti je to docela jednoduché. K vytvoření základního okna a přidání potřebných ovládacích prvků budete potřebovat pouze několik řádků kódu.
Chcete-li začít, nainstalujte PyQt5 pomocí pip:
pip install pyqt5
Poté vytvořte nový soubor s příponou. py a přidejte následující kód:
from PyQt5.QtWidgets import QApplication, QMainWindow
window.setWindowTitle ('moje první okno')
window.setGeometry(100, 100, 500, 500)
Tento kód vytvoří novou aplikaci a hlavní okno. Poté je okno nastaveno na název a velikost. Na konci je vyvolána metoda show (), aby se okno zobrazilo na obrazovce.
Po spuštění tohoto kódu uvidíte jednoduché okno s nadpisem "moje první okno" o rozměrech 500x500 Pixelů. Okno můžete dále konfigurovat, přidat další položky a nastavit jim chování pomocí PyQt5.
Stručné seznámení s PyQt5
PyQt5 je založen na rámci Qt, který je jedním z nejoblíbenějších a nejpoužívanějších rámců pro vývoj aplikací s grafickým rozhraním. PyQt5 má všechny funkce Qt, včetně možnosti vytvářet různé widgety, spravovat rozvržení a styl okna. Poskytuje také velké množství funkcí pro práci s prvky uživatelského rozhraní, jako jsou tlačítka, textová pole, seznamy atd.
Jednou z hlavních funkcí PyQt5 je jeho multiplatformita. Díky použití rámce Qt lze aplikace vytvořené pomocí PyQt5 spouštět na různých operačních systémech, včetně Windows, macOS a Linuxu. To umožňuje vývojářům vytvářet aplikace, které budou fungovat na široké škále zařízení.
Vytvoření okna v PyQt5 je velmi snadné. Prvním krokem je vytvoření objektu třídy QApplication, který aplikaci představuje. Poté se vytvoří objekt třídy QMainWindow, který představuje hlavní okno aplikace. Poté můžete do okna přidat různé widgety, nastavit jejich možnosti a zpracovat události.
from PyQt5.QtWidgets import QApplication, QMainWindow
window.setWindowTitle ('moje první okno PyQt5')
window.setGeometry(100, 100, 500, 500)
PyQt5 také poskytuje spoustu dalších funkcí, jako je možnost pracovat s databázemi, webovými službami a další. To vše dělá z PyQt5 výkonný nástroj pro vytváření vysoce kvalitních grafických uživatelských rozhraní v Pythonu.
Jak vytvořit grafické okno v PyQt5
- Nainstalujte knihovnu PyQt5 do počítače, pokud ještě není nainstalována. Můžete jej nainstalovat pomocí dávkového Správce pip spuštěním příkazu pip install PyQt5 .
- Importujte potřebné moduly do kódu. Obvykle se používají moduly QtCore, QtGui a QtWidgets . Chcete-li to provést, vložte následující řádky na začátek kódu:
from PyQt5 import QtCore, QtGui, QtWidgets
class MyWindow(QtWidgets.QMainWindow):def __init__(self):super().__init__()self.initUI()def initUI(self):self.setWindowTitle("Мое графическое окно")self.setGeometry(100, 100, 500, 500)self.show()
if __name__ == "__main__":app = QtWidgets.QApplication([])window = MyWindow()app.exec_()
V důsledku těchto kroků vytvoříte grafické okno, které se zobrazí na obrazovce. V uvedeném kódu bude mít okno záhlaví "Moje grafické okno" a rozměry 500x500 Pixelů.
Pomocí funkce knihovny PyQt5 můžete také upravit vzhled okna, Přidat ovládací prvky, zpracování událostí a další. Zjistěte více o možnostech PyQt5 z jeho dokumentace.
Vytvoření okna v Pythonu pyqt5
Chcete-li začít s PyQt5, musíte jej nainstalovat pomocí příkazu pip install pyqt5. Po instalaci knihovny můžete začít vytvářet okno.
Chcete-li vytvořit okno v PyQt5, musíte importovat třídy QApplication a QMainWindow:
- from PyQt5.QtWidgets import QApplication, QMainWindow
Dále je třeba vytvořit instanci třídy QApplication:
- app = QApplication([])
Poté je nutné vytvořit instanci třídy QMainWindow:
- win = QMainWindow()
Po vytvoření instance třídy QMainWindow lze nakonfigurovat její vlastnosti, jako je záhlaví okna:
- win.setWindowTitle ('Moje okno')
Poté můžete zobrazit okno vyvoláním metody show ():
Nakonec je nutné vyvolat hlavní cyklus aplikace pomocí metody exec():
To aplikaci umožní očekávat události a interakce uživatele s oknem.
Vytvoření okna v krajtě pomocí knihovny PyQt5 je tedy omezeno na několik jednoduchých kroků. V tomto případě lze pomocí dalších metod a vlastností třídy QMainWindow přidat do okna různé ovládací prvky, jako jsou tlačítka, vstupní pole atd.
Krok 1: import potřebných modulů
Před vytvořením okna v PyQt5 je nutné importovat více modulů. Budete potřebovat modul PyQt5.QtWidgets pro vytváření widgetů, modul PyQt5.QtCore pro práci s událostmi a modul sys pro správu aplikace.
Chcete-li importovat všechny potřebné moduly, použijte následující kód:
from PyQt5.QtWidgets import QApplication, QMainWindow
from PyQt5.QtCore import Qt
Možnost import sys vám umožňuje používat funkce a metody modulu sys. Poskytuje přístup k funkcím, které umožňují interakci se systémem, jako je ukončení programu nebo přenos argumentů příkazového řádku.
Krok 2: vytvoření instance třídy QApplication
Před vytvořením okna aplikace je nutné vytvořit instanci třídy QApplication, která zpracuje hlavní cyklus událostí. Tato třída je zodpovědná za zpracování všech vlastních akcí, jako je stisknutí tlačítek, změna velikosti okna a další události.
Musíte vytvořit objekt třídy QApplication a předat do něj argumenty. V této třídě se obvykle používá pouze jeden argument - seznam argumentů příkazového řádku argv. Tento seznam je vyžadován pouze v určitých případech, například pokud chcete do aplikace přenést argumenty příkazového řádku.
Zde je příklad kódu, který vytváří instanci QApplication:
Tento řádek vytvoří objekt app, což je instance třídy QApplication. Používá sys.argv jako argument pro získání seznamu argumentů příkazového řádku přenesených během spouštění aplikace.
Jakmile máte instanci QApplication, můžete přejít k vytvoření hlavního okna aplikace a dalšímu přizpůsobení jejích prvků rozhraní.
Krok 3: vytvoření instance třídy QMainWindow
Jakmile identifikujeme naše okno, budeme muset vytvořit jeho instanci, abychom jej mohli otevřít.
Za tímto účelem nejprve importujeme třídu QMainWindow z modulu PyQt5 a poté vytvoříme objekt této třídy.
from PyQt5.QtWidgets import QMainWindow
Vytvoření instance třídy QMainWindow nám umožňuje otevřít a zobrazit okno na obrazovce.
Metoda show() zobrazí okno v popředí a metoda exec_ () spustí aplikaci.
Po vyvolání metody exec_ () se okno otevře a očekává interakci uživatele.
Nyní je naše okno připraveno a otevřené a můžeme přejít k dalším krokům, jako je přidání widgetů,
nastavení rozvržení a zpracování událostí.
Krok 4: konfigurace rozhraní okna
Widgety v PyQt5 jsou třídy, které se dědí ze základní třídy QWidget . Například tlačítko v PyQt5 se jeví jako třída QPushButton a textové pole jako třída QLineEdit .
K přidání widgetu do okna se používá metoda addWidget () z třídy QHBoxLayout nebo QVBoxLayout . Tyto třídy jsou různé schémata umístění widgetů v okně, kde QHBoxLayout má prvky v horizontální linii a QVBoxLayout ve vertikální.
Chcete-li například přidat tlačítko do okna, můžete použít následující kód:
- Importujeme QPushButton: from PyQt5.QtWidgets import QPushButton
- Vytvořte tlačítko: button = QPushButton ('stiskni mě')
- Přidejte tlačítko do okna: layout.addWidget(button)
Podobně lze přidat další widgety, jako jsou textová pole, značky atd.
Jakmile jsou všechny widgety přidány do okna, musíte je zviditelnit. K tomu se používá metoda show () z třídy QMainWindow . Nakonec bude kód vypadat asi takto:
from PyQt5.QtWidgets import QMainWindow, QPushButton, QVBoxLayout, QWidgetclass MyWindow(QMainWindow):def __init__(self):super().__init__()layout = QVBoxLayout()button = QPushButton('Нажми меня')layout.addWidget(button)widget = QWidget()widget.setLayout(layout)self.setCentralWidget(widget)self.show()
V tomto kroku jsme tedy nakonfigurovali rozhraní okna, přidali do něj tlačítko a zviditelnili okno.
Krok 5: zobrazení okna
Jakmile jsme vytvořili objekt třídy QtWidgets.QApplication a nastavili hlavní okno pomocí třídy QtWidgets.QMainWindow, můžeme zobrazit okno na obrazovce. K tomu budeme potřebovat metodu show().
Vyvolejte metodu show() pro náš objekt okna. Dokončete kód aplikace pomocí funkce app.exec_().
Nyní spuštěním naší aplikace byste měli vidět zobrazení okna na obrazovce. Můžete změnit velikost okna nebo do něj přidat další widgety a vytvořit tak plnohodnotnou grafickou aplikaci. Právě jsme zvládli základy vytváření okna v PyQt5!