Python

Zgradite aplikacijo PyQt na primeru

Zgradite aplikacijo PyQt na primeru
PyQt je zelo uporabna Pythonova knjižnica, ki se uporablja za razvoj grafičnih aplikacij. Uporablja Qt GUI ogrodje Pythona, ki je razvit z uporabo jezika C ++. Grafični uporabniški vmesnik aplikacije je mogoče razviti z uvozom knjižnice PyQt v skriptu Python ali z uporabo modula Qt Designer za PyQt. Če ne želite pisati kode za izvajanje GUI aplikacije, je bolje namestiti Qt Designer in z njim ustvariti grafični uporabniški vmesnik. Način ustvarjanja aplikacije PyQt v Pythonu je po korakih prikazan v tej vadnici.

Ustvarite preprosto aplikacijo PyQt za dodajanje:

Koraki izvajanja preproste aplikacije PyQt za izračun vsote dveh števil so prikazani v tem poglavju vadnice. Tu bodo številčne vrednosti uporabniku odvzete z besedilnimi polji, po izvedbi skripta pa bo po kliku gumba prikazana vsota vrednosti. Tu je bilo ustvarjeno okno s potrebnimi polji za oblikovanje zasnove aplikacije; Nato se za izračun vsote uporablja skript Python.

Koraki:

Korak 1. Ustvari objekt aplikacije PyQt

Za oblikovanje aplikacije PyQt te vadnice morate uvoziti zahtevane module Pythona. Za oblikovanje te aplikacije bodo potrebne dve nalepki, dve polji z besedilom in gumb.

QApplication, QMainWindow, QLabel, QTextEdit, in QPushButton moduli bodo potrebni za oblikovanje aplikacije.

Za uporabo teh modulov dodajte naslednje vrstice na začetek skripta.

# Uvozite potrebne module
iz PyQt5.QtWidgets uvozijo QApplication, QMainWindow, QLabel, QTextEdit, QPushButton

Dodajte naslednje vrstice, da ustvarite objekt aplikacije in zaženete zanko dogodka. Po izvedbi skripta se ne bo več nič prikazalo.

# Ustvari objektno aplikacijo PyQt
app = QApplication ([])
# Zaženite zanko dogodka za izvajanje aplikacije
app.exec ()

2. korak: Ustvarite objekt razreda in okna

Ustvarite razred za dodajanje potrebnih predmetov v tem koraku za oblikovanje okna aplikacije.

Dodajte naslednje vrstice, da ustvarite razred z okenskim predmetom. Tu so nastavljeni naslov, velikost in položaj okna. Nato se prikaže metoda show (), ki prikaže okno kot izhod.

dodatek razreda (QMainWindow):
def __init __ (samo):
# Pokliči nadrejeni konstruktor
super ().__v__()
# Nastavite naslov okna
sebe.setWindowTitle ("Aplikacija za dodajanje PyQt")
# Nastavite širino in višino okna
sebe.velikost (350, 200)
# Premaknite položaj okna
sebe.premakni (800, 400)
# Prikažite okno
sebe.pokaži ()

Pred zagonom zanke dogodka morate ustvariti predmet razreda.

# Ustvari okenski objekt
okno = dodatek ()

Po izvedbi skripta se prikaže naslednje prazno okno.

3. korak: V okno dodajte pripomočke, ki jih želite dodati

Zdaj dodajte potrebne predmete, potrebne za izvajanje aplikacije. Trije predmeti QLabel gradnik, dva predmeta QTextEdit gradnik in gumbni element QPushButton widget so ustvarjeni v tem koraku. Prva dva predmeta oznake bosta uporabljena za zagotavljanje besedila v pomoč pred polji z besedilom. QTextEdit predmeti bodo uporabljeni za odvzem uporabniku dveh številskih vrednosti. QPushButton objekt bo ustvarjen za izračun vsote vhodnih številk s pomočjo funkcije za obdelavo dogodkov, ki bo ustvarjena v naslednjem koraku. Zadnji objekt oznake bo uporabljen za prikaz seštevanja obeh števil. Tukaj setGeometry () Za vsak predmet se pokliče funkcija, ki nastavi položaj predmeta v oknu.

# Ustvari oznako za prvo številko
sebe.lbl1 = QLabel ('Številka 1', samo)
sebe.lbl1.setGeometry (80, 20, 80, 50)
# Ustvari besedilno polje za prvo številko
sebe.textbox1 = QTextEdit (samo)
sebe.besedilno polje1.setGeometry (80, 60, 70, 30)
# Ustvari nalepko za drugo številko
sebe.lbl2 = QLabel ('Številka 2', samo)
sebe.lbl2.setGeometry (200, 20, 80, 50)
# Ustvari besedilno polje za drugo številko
sebe.textbox2 = QTextEdit (samo)
sebe.textbox2.setGeometry (200, 60, 70, 30)
# Ustvari gumb za izračun vsote
sebe.submit = QPushButton ('Izračunaj vsoto', samo)
sebe.oddajte.setGeometry (80, 100, 190, 30)
# Ustvari oznako za prikaz rezultata seštevanja
sebe.lblResult = QLabel (", samo)
sebe.lblResult.setGeometry (80, 130, 200, 50)

Po izvedbi skripta se prikaže naslednji izhod. V tem koraku ni ustvarjena nobena funkcija obdelovalca dogodkov, ki se uporablja za izračun vsote števil. Če uporabnik klikne gumb, se ne bo zgodilo nič.

4. korak: Ustvarite in pokličite funkcijo za obdelavo dogodka klika gumba

Ustvarite metodo z imenom onClicked () z naslednjimi vrsticami znotraj dodatek class za obdelavo dogodka klika gumba. Vrednosti besedilnih polji se pretvorijo v celoštevilčne številke z uporabo int () funkcijo in shrani v številka1 in številka2 spremenljivke. Nato vsota številka1 in številka2 so shranjeni v rezultat spremenljivka. Vrednosti številka1, številka2, in rezultat spremenljivke se pretvorijo v nizne vrednosti z uporabo str () pred shranjevanjem vrednosti v izhod spremenljivka. Predmet tretje nalepke se uporablja za prikaz vsebine izhod spremenljivka.

def onClicked (self):
num1 = int (self.besedilno polje1.toPlainText ())
num2 = int (self.textbox2.toPlainText ())
rezultat = num1 + num2
izhod = "

Vsota "+ str (num1) +" in "+ str (num2) +" je "+ str (rezultat) + '

"
sebe.lblResult.setText (izhod)

Dodajte naslednje vrstice v razred za predmetom gumba, da pokličete metodo onClicked (), ko bo kliknjen gumb.

# Funkcija klica, ko kliknete gumb
sebe.oddajte.kliknili.povezati (samo.onClicked)

Po izvedbi skripta, če je uporabnik vstopil 12 in 18 v besedilnih poljih in kliknili na Izračunaj vsoto in pod gumbom se prikaže naslednji formatirani izhod.

Zaključek:

Izvedba zelo preproste aplikacije PyQt je pojasnjena v tej vadnici, začenši z osnovnimi informacijami za pomoč novim uporabnikom Pythona. Upamo, da bo uporabnik lahko pravilno oblikoval in ustvaril aplikacijo PyQt, potem ko bo pravilno izvedel in razumel korake te vadnice.

Najboljših 5 izdelkov z ergonomsko računalniško miško za Linux
Ali dolgotrajna uporaba računalnika povzroča bolečine v zapestju ali prstih? Ali imate trde sklepe in bi se morali neprestano tresti z rokami? Ali čut...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...
S pomočjo gumba X-Mouse Button Control različno prilagodite gumbe miške za različno programsko opremo
Mogoče potrebujete orodje, ki bi lahko spremenilo nadzor miške z vsako aplikacijo, ki jo uporabljate. V tem primeru lahko preizkusite aplikacijo z ime...