logo

Python | Úvod do PyQt5

Existuje toľko možností, ktoré poskytuje Python na vývoj GUI aplikácie a PyQt5 je jednou z nich. PyQt5 je multiplatformový GUI toolkit, sada pythonových väzieb pre Qt v5. Vďaka nástrojom a jednoduchosti poskytovaným touto knižnicou je možné vytvoriť interaktívnu desktopovú aplikáciu s takou ľahkosťou. Aplikácia GUI pozostáva z front-endu a back-endu. PyQt5 poskytuje nástroj s názvom „QtDesigner“ na navrhovanie front-endu metódou drag and drop, takže vývoj môže byť rýchlejší a človek môže venovať viac času back-end veciam. Inštalácia: Najprv musíme nainštalovať knižnicu PyQt5. Na tento účel zadajte do terminálu alebo príkazového riadka nasledujúci príkaz:

pip install pyqt5>

Ak je inštalácia úspešná, môžete to overiť spustením kódu:

>>>importovať PyQt5>

PyQt5 poskytuje množstvo nástrojov a QtDesigner je jedným z nich. Na tento účel spustite tento príkaz:



internetový protokol smtp
pip install PyQt5-tools>

Vytvorte svoju prvú aplikáciu –

Ide o jednoduchú aplikáciu s jediným tlačidlom v okne. Po kliknutí na toto tlačidlo sa zobrazí správa Klikli ste na mňa. Začnime .

  • V prvom rade musíme nájsť QtDesigner na vytvorenie prednej časti. – QtDesigner sa nachádza v „site-packages/pyqt5_tools“ – Ak chcete nájsť umiestnenie balíčkov lokality, napíšte nasledujúci python kód pomocou ľubovoľného editora podľa vášho výberu a potom spustite:
>>> importovať stránky>>> site.getsitepackages()>
  • – Spustite aplikáciu s názvom „dizajnér“.
  • Otvorí sa okno, ako je znázornené na obrázku: vyberte možnosť „Dialógové okno bez tlačidla“ a kliknite na „Vytvoriť“
  • Na ľavej strane návrhára budú rôzne miniaplikácie, ktoré je možné presúvať myšou v našom okne podľa našej požiadavky.
  • Nájdite a presuňte myšou „Push Button“ a „Label“.
  • Zmeňte text vo vnútri miniaplikácií kliknutím pravým tlačidlom myši a výberom možnosti „Zmeniť obyčajný text“. Ponechajte text štítka prázdny.
  • Vytvorili sme naše rozloženie front-endu, stačí ho uložiť na požadované miesto. Nezabudnite, že tento súbor bude mať príponu .ui.
  • Potrebujeme skonvertovať súbor .ui na súbor .py, aby sme získali pythonovú formu widgetov a pripojili k nim potrebné poslucháče udalostí.

Konverzia súboru .ui na súbor .py:

  • Na to musíme prejsť do adresára sitepackages v termináli alebo príkazovom riadku a spustiť príkaz, ako je uvedené nižšie. Získanie polohy balíkov stránok je uvedené vyššie.

>>> cd C:Users……ProgramyPythonPython36-32libsite-packages [Umiestnenie balíkov stránok]>>> pyuic5 C:Users……FILENAME .ui[Presné umiestnenie súboru .ui] -o C:Users…….FILENAME.py [Umiestnenie, kam chcete umiestniť súbor .py]

  • Nakoniec do kódu pythonu pridáme signály a slot, aby bol plne funkčný.
widget.signal.connect(slot)>
  • A signál je vydaný miniaplikáciami po výskyte určitého druhu udalosti, ako je kliknutie, dvojité kliknutie atď slot je akákoľvek volateľná funkcia, ktorá vykoná nejakú akciu po výskyte udalosti.
  • Spustite aplikáciu a kliknite na tlačidlo.

Nižšie je uvedený kód -

nájsť môj iphone android

Python3




import> sys> from> PyQt5>import> QtCore, QtGui, QtWidgets> class> Ui_Dialog(>object>):> >def> setupUi(>self>, Dialog):> >Dialog.setObjectName('Dialog')> >Dialog.resize(>400>,>300>)> >self>.pushButton>=> QtWidgets.QPushButton(Dialog)> >self>.pushButton.setGeometry(QtCore.QRect(>150>,>70>,>93>,>28>))> >self>.label>=> QtWidgets.QLabel(Dialog)> >self>.label.setGeometry(QtCore.QRect(>130>,>149>,>151>,>31>))> >self>.label.setText('')> >self>.retranslateUi(Dialog)> >QtCore.QMetaObject.connectSlotsByName(Dialog)> > ># adding signal and slot> >self>.pushButton.clicked.connect(>self>.showmsg)> >def> retranslateUi(>self>, Dialog):> >_translate>=> QtCore.QCoreApplication.translate> >Dialog.setWindowTitle(_translate('Dialog', 'Dialog'))> >self>.pushButton.setText(_translate('Dialog', 'Click'))> > >def> showmsg(>self>):> ># slot> >self>.label.setText('You clicked me')> if> __name__>=>=> '__main__':> >app>=> QtWidgets.QApplication(sys.argv)> >MainWindow>=> QtWidgets.QMainWindow()> >ui>=> Ui_Dialog()> >ui.setupUi(MainWindow)> >MainWindow.show()> >sys.exit(app.exec_())>

stiahnite si videá z youtube vlc
>

>