Lag en enkel PyQt-applikasjon for tillegg:
Trinnene for å implementere en enkel PyQt-applikasjon for å beregne summen av to tall er vist i denne delen av opplæringen. Her vil tallverdiene bli tatt fra brukeren ved hjelp av tekstbokser, etter at skriptet er utført, så vil summen av verdiene vises etter å ha klikket på en knapp. Her er det opprettet et vindu med nødvendige felt for å bygge utformingen av applikasjonen; deretter brukes Python-skriptet til å beregne summen.
Fremgangsmåte:
Trinn 1. Lag PyQt applikasjonsobjekt
Du må importere de nødvendige modulene av Python for å designe PyQt-applikasjonen til denne opplæringen. For å designe dette programmet vil det kreve to etiketter, to tekstbokser og en trykknapp.
QApplication, QMainWindow, QLabel, QTextEdit, og QPushButton moduler kreves for å utforme applikasjonen.
Legg til følgende linjer i begynnelsen av skriptet for å bruke disse modulene.
# Importer nødvendige modulerfra PyQt5.QtWidgets importerer QApplication, QMainWindow, QLabel, QTextEdit, QPushButton
Legg til følgende linjer for å opprette applikasjonsobjektet og starte hendelsessløyfen. Ingenting vises etter å ha utført skriptet nå.
# Opprett objekt PyQt-applikasjonapp = QApplication ([])
# Start hendelsessløyfen for å kjøre applikasjonen
app.utføre ()
Trinn 2: Opprett klasse- og vindusobjekt
Opprett klassen for å legge til de nødvendige objektene i dette trinnet for å designe applikasjonsvinduet.
Legg til følgende linjer for å opprette en klasse med et vindusobjekt. Her er tittel, størrelse og plassering av vinduet satt. Deretter kalles show () metoden for å vise vinduet som utdata.
klassetillegg (QMainWindow):def __init __ (selv):
# Ring foreldrekonstruktøren
super().__i det__()
# Sett tittelen på vinduet
selv-.setWindowTitle ("PyQt Addition Application")
# Still inn bredden og høyden på vinduet
selv-.endre størrelse (350, 200)
# Flytt vinduets posisjon
selv-.flytte (800, 400)
# Vis vinduet
selv-.vise fram()
Du må lage objektet til klassen før du kjører hendelsessløyfen.
# Lag vindusobjektvindu = tillegg ()
Følgende blanke vindu vises etter at skriptet er utført.
Trinn 3: Legg til nødvendige widgets i vinduet for tillegg
Legg nå til de nødvendige objektene som kreves for å implementere applikasjonen. De tre objektene til QLabel widget, to gjenstander av QTextEdit widget, og et knappegjenstand til QPushButton widget blir opprettet i dette trinnet. De to første etikettobjektene vil bli brukt til å gi hjelpeteksten før tekstboksene. QTextEdit objekter vil bli brukt til å ta to tallverdier fra brukeren. QPushButton objekt vil bli opprettet for å beregne summen av inngangstallene ved hjelp av en hendelsesbehandlerfunksjon som vil bli opprettet i neste trinn. Det siste etikettobjektet vil bli brukt til å vise summeringen av de to tallene. Her, den setGeometry () funksjon kalles for hvert objekt for å sette objektets posisjon i vinduet.
# Lag etikett for det første nummeretselv-.lbl1 = QLabel ('Nummer 1', selv)
selv-.lbl1.setGeometry (80, 20, 80, 50)
# Opprett tekstboks for det første nummeret
selv-.textbox1 = QTextEdit (selv)
selv-.tekstboks1.setGeometry (80, 60, 70, 30)
# Lag etikett for det andre nummeret
selv-.lbl2 = QLabel ('Nummer 2', selv)
selv-.lbl2.setGeometry (200, 20, 80, 50)
# Opprett tekstboks for det andre nummeret
selv-.textbox2 = QTextEdit (selv)
selv-.tekstboks2.setGeometry (200, 60, 70, 30)
# Lag trykknapp for å beregne summen
selv-.send inn = QPushButton ('Beregn sum', selv)
selv-.sende inn.setGeometry (80, 100, 190, 30)
# Lag etikett for å vise resultatet av summeringen
selv-.lblResult = QLabel (", selv)
selv-.lblResultat.setGeometry (80, 130, 200, 50)
Følgende utdata vises etter utførelsen av skriptet. Ingen hendelsesbehandlerfunksjon opprettes i dette trinnet, som brukes til å beregne summen av tallene. Så hvis brukeren klikker på knappen, vil ingenting skje.
Trinn 4: Opprett og ring funksjonen for å håndtere klikkhendelsen til knappen
Lag en metode som heter onClicked () med følgende linjer inne i addisjon klasse for å håndtere klikkhendelsen på knappen. Verdiene til tekstboksene konverteres til heltall ved hjelp av int () funksjon og lagres i num1 og num2 variabler. Neste, summen av num1 og num2 lagres i resultat variabel. Verdiene av num1, num2, og resultat variabler konverteres til strengverdier ved hjelp av str () før du lagrer verdiene i produksjon variabel. Det tredje etikettobjektet brukes til å vise innholdet i produksjon variabel.
def onKlikket (selv):num1 = int (selv.tekstboks1.toPlainText ())
num2 = int (selv.tekstboks2.toPlainText ())
resultat = num1 + num2
utgang = "
Summen av "+ str (num1) +" og "+ str (num2) +" er "+ str (resultat) + '
'selv-.lblResultat.setText (utgang)
Legg til følgende linjer i klassen etter knappobjektet du vil ringe påClicked () -metoden når du vil klikke på knappen.
# Anropsfunksjon når du klikker på knappenselv-.sende inn.klikket.koble (selv.onClicked)
Etter at man har utført skriptet, hvis brukeren kom inn 12 og 18 i tekstboksene og klikket på Beregn sum knappen, og følgende formaterte utdata vises under knappen.
Konklusjon:
Implementeringen av en veldig enkel PyQt-applikasjon har blitt forklart i denne opplæringen fra det grunnleggende for å hjelpe de nye Python-brukerne. Forhåpentligvis vil brukeren være i stand til å designe og lage en enkel PyQt-applikasjon etter å ha fullført og forstå trinnene i denne opplæringen riktig.