Det finns så många alternativ som Python tillhandahåller för att utveckla GUI-applikationer och PyQt5 är en av dem. PyQt5 är plattformsoberoende GUI-verktygssats, en uppsättning pythonbindningar för Qt v5. Man kan utveckla en interaktiv skrivbordsapplikation med så mycket lätthet på grund av verktygen och enkelheten som tillhandahålls av detta bibliotek. En GUI-applikation består av Front-end och Back-end. PyQt5 har tillhandahållit ett verktyg som heter 'QtDesigner' för att designa front-end genom att dra och släpp-metoden så att utvecklingen kan bli snabbare och man kan ge mer tid på back-end-grejer. Installation: Först måste vi installera PyQt5-biblioteket. För detta, skriv följande kommando i terminalen eller kommandotolken:
pip install pyqt5>
Om installerat framgångsrikt kan man verifiera det genom att köra koden:
>>>importera PyQt5>
PyQt5 tillhandahåller massor av verktyg och QtDesigner är ett av dem. Kör detta kommando för detta:
pip install PyQt5-tools>
Skapa din första app –
Detta är en enkel app som har en enda knapp i fönstret. När du har klickat på den knappen visas ett meddelande Du klickade på mig. Låt oss börja .
- Först och främst måste vi hitta QtDesigner för att skapa front-end-delen. – QtDesigner finns på ‘site-packages/pyqt5_tools’ – För att hitta platsen för site-packages skriv följande python-kod med valfri editor och kör sedan:
>>> importera webbplats>>> site.getsitepackages()>
- – Kör programmet som heter 'designer'.
- Ett fönster öppnas som visas i bilden:
välj alternativet 'Dialog utan knapp' och klicka på 'Skapa'
- Till vänster om designern kommer det att finnas olika widgets som kan dras och släppas i vårt fönster enligt våra krav.
- Hitta och dra och släpp 'Push Button' och 'Etikett'.
- Ändra texten i widgetarna genom att högerklicka på den och välja 'Ändra vanlig text'. Håll etikettens text tom.
- Vi har skapat vår front-end-layout, spara den bara på önskad plats. Kom ihåg att den här filen kommer att ha .ui som tillägg.
- Vi måste konvertera .ui-filen till .py-fil för att få widgetarnas pythonform och bifoga nödvändiga händelseavlyssnare till dem.
Konvertera .ui-fil till .py-fil:
- För detta måste vi gå till sitepackages-katalogen i terminalen eller kommandotolken och köra kommandot som visas nedan. Att få plats på platspaket har nämnts tidigare.
>>> cd C:Users……ProgramsPythonPython36-32libsite-packages [Plats för webbplatspaket]>>> pyuic5 C:Users……FILENAME .ui[Exakt plats för .ui-filen] -o C:Users…….FILENAME.py [Plats där du vill placera .py-filen]
- Slutligen kommer vi att lägga till signaler och plats i pythonkoden för att göra den fullt fungerande.
widget.signal.connect(slot)>
- A signal sänds ut av widgetar efter förekomsten av en viss typ av händelse som ett klick, dubbelklick etc. A spår är en anropsbar funktion som kommer att utföra en åtgärd efter att en händelse inträffat.
- Kör appen och klicka på knappen.
Nedan är koden -
Python3
försök fånga i java
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_())> |
>
>