Opret en simpel PyQt-applikation til tilføjelse:
Trinene til implementering af en simpel PyQt-applikation til beregning af summen af to tal vises i dette afsnit af vejledningen. Her tages talværdierne fra brugeren ved hjælp af tekstfelter efter udførelse af scriptet, så vises summen af værdierne efter at have klikket på en knap. Her er der oprettet et vindue med de nødvendige felter til at bygge applikationens design; derefter bruges Python-scriptet til at beregne summen.
Trin:
Trin 1. Opret PyQt-applikationsobjekt
Du skal importere de krævede moduler af Python for at designe PyQt-applikationen i denne vejledning. For at designe denne applikation kræver den to etiketter, to tekstfelter og en trykknap.
QApplication, QMainWindow, QLabel, QTextEdit, og QPushButton moduler kræves for at designe applikationen.
Tilføj følgende linjer i begyndelsen af scriptet for at bruge disse moduler.
# Importer nødvendige modulerfra PyQt5.QtWidgets importerer QApplication, QMainWindow, QLabel, QTextEdit, QPushButton
Tilføj følgende linjer for at oprette applikationsobjektet og starte begivenhedssløjfen. Intet vises efter udførelse af scriptet nu.
# Opret objekt PyQt-applikationapp = QApplication ([])
# Start begivenhedssløjfen til udførelse af applikationen
app.udføre ()
Trin 2: Opret klasse- og vindueobjekt
Opret klassen for at tilføje de nødvendige objekter i dette trin for at designe applikationsvinduet.
Tilføj følgende linjer for at oprette en klasse med et vindueobjekt. Her indstilles vinduets titel, størrelse og placering. Dernæst kaldes metoden show () for at vise vinduet som output.
klasse tilføjelse (QMainWindow):def __init __ (selv):
# Ring til forældrekonstruktøren
super().__i det__()
# Indstil titlen på vinduet
selv.setWindowTitle ("PyQt-tilføjelsesapplikation")
# Indstil vinduets bredde og højde
selv.ændre størrelse (350, 200)
# Flyt vinduespositionen
selv.flyt (800, 400)
# Vis vinduet
selv.at vise()
Du skal oprette klassens objekt, før du kører begivenhedssløjfen.
# Opret vindueobjektvindue = tilføjelse ()
Følgende blanke vindue vises efter udførelse af scriptet.
Trin 3: Tilføj nødvendige widgets i vinduet til tilføjelse
Tilføj nu de nødvendige objekter, der kræves for at implementere applikationen. De tre objekter af QLabel widget, to objekter af QTextEdit widget og et knapobjekt til QPushButton widget oprettes i dette trin. De første to etiketobjekter vil blive brugt til at give hjælpeteksten før tekstfelterne. QTextEdit objekter vil blive brugt til at tage to talværdier fra brugeren. QPushButton objekt oprettes for at beregne summen af inputnumrene ved hjælp af en begivenhedshåndteringsfunktion, der oprettes i næste trin. Det sidste etiketobjekt bruges til at vise summen af de to tal. Her, den setGeometry () funktion kaldes for hvert objekt til at indstille objektets position i vinduet.
# Opret etiket til det første nummerselv.lbl1 = QLabel ('Nummer 1', selv)
selv.lbl1.setGeometry (80, 20, 80, 50)
# Opret tekstboks til det første nummer
selv.textbox1 = QTextEdit (selv)
selv.tekstboks1.setGeometry (80, 60, 70, 30)
# Opret etiket til det andet nummer
selv.lbl2 = QLabel ('Nummer 2', selv)
selv.lbl2.setGeometry (200, 20, 80, 50)
# Opret tekstboks til det andet nummer
selv.textbox2 = QTextEdit (selv)
selv.tekstboks2.setGeometry (200, 60, 70, 30)
# Opret trykknap for at beregne summen
selv.send = QPushButton ('Beregn sum', selv)
selv.Indsend.setGeometry (80, 100, 190, 30)
# Opret etiket for at vise resultatet af summeringen
selv.lblResult = QLabel (", selv)
selv.lblResult.setGeometry (80, 130, 200, 50)
Følgende output vises efter udførelse af scriptet. Ingen begivenhedshåndteringsfunktion oprettes i dette trin, som bruges til at beregne summen af tallene. Så hvis brugeren klikker på knappen, sker der intet.
Trin 4: Opret og kald til funktionen for at håndtere klikhændelsen på knappen
Opret en metode, der hedder onClicked () med følgende linjer inden i tilføjelse klasse til at håndtere klikhændelsen på knappen. Værdierne for tekstbokse konverteres til heltal ved hjælp af int () funktion og gemmes i num1 og num2 variabler. Dernæst summen af num1 og num2 er gemt i resultat variabel. Værdierne af num1, num2, og resultat variabler konverteres til strengværdier ved hjælp af str () før lagring af værdierne i produktion variabel. Det tredje etiketobjekt bruges til at vise indholdet af produktion variabel.
def onClicked (selv):num1 = int (selv.tekstboks1.toPlainText ())
num2 = int (selv.tekstboks2.toPlainText ())
resultat = num1 + num2
output = "
Summen af "+ str (num1) +" og "+ str (num2) +" er "+ str (resultat) + '
''selv.lblResult.setText (output)
Tilføj følgende linjer i klassen efter det knapobjekt, der skal kaldes påClicked () -metoden, når der klikkes på knappen.
# Opkaldsfunktion, når der trykkes på knappenselv.Indsend.klikkede.forbinde (selv.onClicked)
Efter udførelse af scriptet, hvis brugeren indtastede 12 og 18 i tekstfelterne og klikte på Beregn sum knappen, og følgende formaterede output vises under knappen.
Konklusion:
Implementeringen af en meget enkel PyQt-applikation er blevet forklaret i denne vejledning startende fra det grundlæggende for at hjælpe de nye Python-brugere. Forhåbentlig vil brugeren være i stand til at designe og oprette en simpel PyQt-applikation efter at have gennemført og forstået trinene i denne vejledning korrekt.