Python | PyQt5:n esittely
Python tarjoaa niin monia vaihtoehtoja GUI-sovelluksen kehittämiseen, ja PyQt5 on yksi niistä. PyQt5 on monialustainen GUI-työkalusarja, joukko python-sidoksia Qt v5:lle. Vuorovaikutteisen työpöytäsovelluksen voi kehittää niin helposti tämän kirjaston tarjoamien työkalujen ja yksinkertaisuuden ansiosta. GUI-sovellus koostuu etuosasta ja taustaosasta. PyQt5 on tarjonnut työkalun nimeltä 'QtDesigner' käyttöliittymän suunnitteluun vetämällä ja pudottamalla, jotta kehitys voi nousta ja taustatavaroihin voi varata enemmän aikaa. Asennus: Ensin meidän on asennettava PyQt5-kirjasto. Kirjoita tätä varten seuraava komento terminaaliin tai komentokehotteeseen:
pip install pyqt5
Jos asennus onnistui, sen voi tarkistaa suorittamalla koodin:
>>>tuo PyQt5
PyQt5 tarjoaa paljon työkaluja ja QtDesigner on yksi niistä. Suorita tätä varten tämä komento:
pip install PyQt5-tools
Luo ensimmäinen sovelluksesi –
Tämä on yksinkertainen sovellus, jonka ikkunassa on yksi painike. Kun olet napsauttanut tätä painiketta, näkyviin tulee viesti. Napsautit minua. Aloitetaan .
- Ensinnäkin meidän on löydettävä QtDesigner luodaksesi etuosan. – QtDesigner löytyy osoitteesta 'site-packages/pyqt5_tools' – Sivustopakettien sijainnin selvittämiseksi kirjoita seuraava python-koodi millä tahansa valitsemallasi editorilla ja suorita sitten:
>>> tuo sivusto>>> site.getsitepackages()
- – Suorita sovellus nimeltä 'designer'.
- Ikkuna avautuu kuvan osoittamalla tavalla:
valitse 'Dialogi ilman painiketta' -vaihtoehto ja napsauta 'Luo' - Suunnittelijan vasemmalla puolella on erilaisia widgetejä, jotka voidaan vetää ja pudottaa ikkunaamme tarpeidemme mukaan.
- Etsi ja vedä ja pudota 'Push Button' ja 'Label'.
- Muuta tekstiä widgetien sisällä napsauttamalla sitä hiiren kakkospainikkeella ja valitsemalla Muuta pelkkää tekstiä. Pidä etiketin teksti tyhjänä.
- Olemme luoneet käyttöliittymän asettelun, tallenna se haluamaasi paikkaan. Muista, että tämän tiedoston tunniste on .ui.
- Meidän on muutettava .ui-tiedosto .py-tiedostoksi saadaksemme widgetien python-muodon ja liittääksemme niihin tarvittavat tapahtumakuuntelijat.
.ui-tiedoston muuntaminen .py-tiedostoksi:
- Tätä varten meidän on mentävä terminaalin tai komentokehotteen sitepackages-hakemistoon ja suoritettava komento alla olevan kuvan mukaisesti. Sivustopakettien sijainnin saaminen on mainittu aiemmin.
>>> cd C:Käyttäjät……OhjelmatPythonPython36-32libsite-packages [Sivustopakettien sijainti]>>> pyuic5 C:Käyttäjät……FILENAME .ui[.ui-tiedoston tarkka sijainti] -o C:Users…….FILENAME.py [Sijainti, johon haluat sijoittaa .py-tiedoston]
- Lopuksi lisäämme signaaleja ja python-koodin, jotta se toimii täysin.
widget.signal.connect(slot)
- A signaali widgetit lähettävät tietynlaisen tapahtuman, kuten napsautuksen, kaksoisnapsautuksen jne., jälkeen. aukko on mikä tahansa kutsuttava toiminto, joka suorittaa jonkin toiminnon tapahtuman jälkeen.
- Suorita sovellus ja napsauta painiketta.
Alla on koodi -
Python 3
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_())> |
valitse 'Dialogi ilman painiketta' -vaihtoehto ja napsauta 'Luo'