Python Tkinter -esimerkkejä

Python Tkinter Esimerkkeja



Python on monipuolinen ohjelmointikieli, jolla voidaan toteuttaa erilaisia ​​sovelluksia. Siinä on monenlaisia ​​moduuleja GUI (Graphical User Interface) -pohjaisten sovellusten luomiseen. Python tkinter on yksi niistä. Mikä tahansa työpöytäsovellus voidaan toteuttaa helposti tkinter-moduulin avulla. On parempi, jos sinulla on perustiedot Python-ohjelmoinnista oppiaksesi Python tkinter -moduulin käyttötavat. Python tkinter -moduulin eri käyttötavat GUI-sovellusten luomiseen esitetään tässä opetusohjelmassa.

Asenna Tkinter-moduuli

Tkinter-moduulia ei ole asennettu Pythoniin oletusarvoisesti. Joten sinun on suoritettava seuraava komento asentaaksesi tkinter-moduulin Python 3+ -versioon:







$ sudo apt Asentaa python3-tk



Erilaiset Tkinter-widgetit

tkinter-moduuli sisältää erilaisia ​​widgetejä eri tarkoituksiin.







Widgetin nimi Tarkoitus
Label Sitä käytetään näyttämään auttava viesti käyttäjälle.
Painike Sitä käytetään erilaisten painikkeiden lisäämiseen sovellukseen.
Kehys Se toimii kuten widget-säilö, joka sisältää erityyppisiä widgetejä järjestetyn lomakkeen suunnittelemiseksi.
Sisäänpääsy Sitä käytetään ottamaan yksirivinen teksti käyttäjältä.
Tarkistuspainike Sitä käytetään lisäämään valintaruutupainikkeita, jotta käyttäjä voi syöttää useita tietoja useista vaihtoehdoista.
Radiopainike Sitä käytetään lisäämään valintanapit, jotta käyttäjä ottaa yksittäisen syötteen useista vaihtoehdoista.
Combobox-painike Sitä käytetään lisäämään avattava luettelo, joka ottaa yksittäisen syötteen käyttäjältä useista vaihtoehdoista.
ListBox Sitä käytetään lisäämään luetteloruutu, joka ottaa käyttäjältä useita syötteitä useista vaihtoehdoista.
Teksti Sitä käytetään ottamaan käyttäjältä monirivinen teksti.
Viesti Sitä käytetään viesti-ikkunan näyttämiseen käyttäjälle.
Vierityspalkki Sitä käytetään lisäämään ikkunaan vierityspalkki ikkunan vierittämiseksi ylös ja alas.
Valikko-painike Sitä käytetään valikon näyttämiseen käyttäjälle.
Valikko Sitä käytetään valikon kohteiden näyttämiseen käyttäjälle.
PanedWindow Se toimii kuten widget-säiliö, joka sisältää vaaka- ja pystyruudut.
Välilehdet Sitä käytetään välilehti-ikkunan lisäämiseen sovellukseen.

Erilaisia ​​Tkinter-esimerkkejä

Joidenkin yleisten tkinter-widgetien käyttö on esitetty seuraavissa esimerkeissä.

Esimerkki 1: Luo yksinkertainen GUI-sovellus

Luo Python-tiedosto, jossa on seuraava sisältö ja joka näyttää ruudun keskellä valintaikkunan, jossa on otsikko ja tietty korkeus ja leveys:



#Tuo tarvittava moduuli
tkinterin tuonnista *

#Luo objekti ikkunalle
tkobj = Tk ( )

#Aseta ikkunan otsikko
tkobj.title ( 'Opi tkinter-moduuli' )

#Aseta ikkunan korkeus ja leveys
tkobj.geometry ( '300x150' )

#Aseta ikkunan näyttöpaikka keskeisesti
tkobj.eval ( 'tk::PlaceWindow . keskusta' )

#Suorita Tkinter
tkobj.mainloop ( )

Lähtö:

Seuraava tulos tulee näkyviin komentosarjan suorittamisen jälkeen. Näyttöön tulee valintaikkuna, jonka otsikko on 'Learn tkinter module':

Esimerkki 2: Tarran ja painikkeen käyttö

Luo Python-tiedosto seuraavalla komentosarjalla, joka näyttää ikkunan, jossa on otsikko ja valintaikkuna:

#Tuo tarvittava moduuli
tkinterin tuonnista *

#Luo objekti ikkunalle
tkobj = Tk ( )

#Aseta ikkunan otsikko
tkobj.title ( 'Opi tkinter-moduuli' )

#Aseta ikkunan korkeus ja leveys
tkobj.geometry ( '400x150' )

#Määritä etikettiobjekti
lbl = etiketti ( tkobj, teksti = 'Se on yksinkertainen ikkuna' )
#Lisää tarra ikkunaan
lbl.pack ( ipadx = 30 , ipadit = kaksikymmentä )

#Määritä painikeobjekti
btn = Painike ( tkobj, teksti = 'Klikkaa minua' )
#Lisää painike ikkunaan sijainnilla
btn.pack ( ipadx = 30 , ipadit = 10 )

#Aseta ikkunan näyttöpaikka keskeisesti
tkobj.eval ( 'tk::PlaceWindow . keskusta' )

#Suorita Tkinter
tkobj.mainloop ( )

Lähtö:

Ikkuna, jossa on otsikko ja painike, ilmestyy näytön keskelle komentosarjan suorittamisen jälkeen.

Esimerkki 3: Aseta fontin väri ja taustaväri

Luo Python-tiedosto seuraavalla komentosarjalla, joka näyttää ikkunan, jossa on tarra ja värikäs painike. Tässä background-attribuuttia käytetään asettamaan painikkeen taustaväri ja foreground-attribuuttia painikkeen fontin värin asettamiseen:

#Tuo tarvittava moduuli
tkinterin tuonnista *

#Luo objekti ikkunalle
tkobj = Tk ( )

#Aseta ikkunan otsikko
tkobj.title ( 'Opi tkinter-moduuli' )

#Aseta ikkunan korkeus ja leveys
tkobj.geometry ( '400x150' )

#Määritä etikettiobjekti
lbl = etiketti ( tkobj, teksti = 'Aseta tausta- ja etualan väri' )
#Lisää tarra ikkunaan
lbl.pack ( ipadx = 30 , ipadit = kaksikymmentä )

#Määritä painikeobjekti tausta- ja etualan värillä
btn = Painike ( tkobj, teksti = 'Klikkaa minua' , tausta = 'sininen' , etualalla = 'punainen' )
#Lisää painike ikkunaan sijainnilla
btn.pack ( ipadx = 30 , ipadit = 8 )

#Aseta ikkunan näyttöpaikka keskeisesti
tkobj.eval ( 'tk::PlaceWindow . keskusta' )

#Suorita Tkinter
tkobj.mainloop ( )

Lähtö:

Seuraava ikkuna tulee näkyviin komentosarjan suorittamisen jälkeen:

Esimerkki 4: Kehyksen käyttö

Seuraavassa Python-skriptissä tarra ja kaksi painiketta näkyvät kehyswidgetissä. Luo Python-tiedosto komentosarjan kanssa tulostuksen tarkistamiseksi:

#Tuo tarvittava moduuli
tkinterin tuonnista *

#Luo objekti ikkunalle
tkobj = Tk ( )

#Aseta ikkunan otsikko
tkobj.title ( 'tkinter-moduuli' )

#Aseta ikkunan korkeus ja leveys
tkobj.geometry ( '250x100' )

#Määritä kehysobjektit
frm = Kehys ( tkobj )
frm.pack ( )
lframe = Kehys ( tkobj )
lframe.pack ( puolella = VASEN )
rframe = Kehys ( tkobj )
rframe.pack ( puolella = OIKEIN )

#Määritä etiketti kehyksen sisällä
lbl = etiketti ( alkaen, teksti = 'kehyksen käyttö' , fg = 'sininen' )
lbl.pack ( )

#Määritä painikkeet kehyksen sisällä
btn1 = Painike ( lframe, teksti = '' , fg = 'musta' , bg = 'valkoinen' )
btn2.pack ( puolella = OIKEIN )

#Aseta ikkunan näyttöpaikka keskeisesti
tkobj.eval ( 'tk::PlaceWindow . keskusta' )

#Suorita Tkinter
tkobj.mainloop ( )

Lähtö:

Seuraava tulos tulee näkyviin komentosarjan suorittamisen jälkeen:

Esimerkki 5: Käsittele painiketapahtumaa

Viestilaatikon käyttö näkyy seuraavassa skriptissä. Viestiruutu tulee näkyviin, kun painiketta napsautetaan:

#Tuo tarvittavat moduulit
tkinterin tuonnista *
tkinterin tuontiviestilaatikosta

#Luo objekti ikkunalle
tkobj = Tk ( )

#Aseta ikkunan otsikko
tkobj.title ( 'Opi tkinter-moduuli' )

#Aseta ikkunan korkeus ja leveys
tkobj.geometry ( '400x150' )

#Määritä toiminto viestilaatikon näyttämiseksi
def näyttö ( ) :
messagebox.showinfo ( 'Tiedot' , 'Painiketta klikataan.' )

#Luo tarrateksti fontin värillä, tyylillä ja sijainnilla
Label ( tkobj, teksti = 'Tkinteriä käyttävä työpöytäsovellus.' , fg = 'vihreä' ) .pakkaus ( Paddy = 25 )

#Luo painike painikkeenkäsittelijällä
Painike ( tkobj, teksti = 'Näytä viesti' , komento = näyttö ) .pakkaus ( )

#Aseta ikkunan näyttöpaikka keskeisesti
tkobj.eval ( 'tk::PlaceWindow . keskusta' )

#Suorita Tkinter
tkobj.mainloop ( )

Lähtö:

Seuraava ikkuna tulee näkyviin komentosarjan suorittamisen jälkeen:

Seuraava viestiruutu tulee näkyviin painikkeen painamisen jälkeen:

Esimerkki 6: Ota syöte käyttäjältä

Tkinter-moduulissa on useita widgetejä, jotka vastaanottavat syötteitä käyttäjältä. Yleisimpien widgetien käyttötavat on esitetty seuraavassa skriptissä. Luo Python-tiedosto seuraavalla koodilla tarkistaaksesi tulosteen:

#Tuo tarvittavat moduulit
tkinterin tuonnista *
tkinter.ttk import Comboboxista
tkinter importista ttk
tuonti tkinter kuten tk
tkinterin tuontiviestilaatikosta

#Luo tkinter-objekti
tkobj = Tk ( )

#Aseta ikkunan otsikko
tkobj.title ( 'Käyttäjätietolomake' )

#Aseta ikkunan korkeus ja leveys
tkobj.geometry ( '550x320' )

#Määritä funktio lomakearvojen näyttämiseksi
def display_values ( ) :
#Lue yksirivinen teksti
nimi = 'Nimi:' + name_val.get ( ) + ' \n '
#Lue valitun valintanapin arvo
jos gender.get ( ) == 1 :
g = 'Uros'
muu:
g = 'Nainen'
g = 'Sukupuoli:' + g + ' \n '

#Lue valitut valintaruutujen arvot
peli = ''
jos g1.get ( ) == 1 :
peli = 'Kriketti'
jos g2.get ( ) == 1 :
jos peli ! = '' :
peli += ', ' + 'Jalkapallo'
muu:
peli = 'Jalkapallo'
jos g3.get ( ) == 1 :
jos peli ! = '' :
peli += ', ' + 'Koripallo'
muu:
peli = 'Koripallo'
peli = 'Peli:' + peli + ' \n '

#Lue yhdistelmälaatikon arvot
maa = 'Maa : ' + countryVal.get ( ) + ' \n '
#Lue monirivinen teksti
osoite = 'Osoite:' + addr.get ( '1.0' , 'loppu' ) + ' \n '
#Yhdistä kaikki kenttien arvot
form_values ​​= nimi + g + peli + maa + osoite
#Näytä arvot viestiruudussa
messagebox.showinfo ( 'Käyttäjän tiedot' , muoto_arvot )


#Luo tarra ja nimikenttä
Label ( tkobj, teksti = 'Nimi:' ) .paikka ( x = 100 , ja = kaksikymmentä )
name_val = MerkkijonoVar ( )
ttk.Sisäänpääsy ( tkobj, tekstimuuttuja =nimi_val ) .pakkaus ( Padx = 220 , Paddy = kaksikymmentä )

#Luo tarra ja valintanappi
Label ( tkobj, teksti = 'Sukupuoli:' ) .paikka ( x = 100 , ja = 60 )
sukupuoli = IntVar ( )
gender.set ( 1 )
Radiopainike ( tkobj, teksti = 'Uros' , muuttuja = sukupuoli, arvo = 1 ) .paikka ( x = 210 , ja = 60 )
Radiopainike ( tkobj, teksti = 'Nainen' , muuttuja = sukupuoli, arvo = 2 ) .paikka ( x = 290 , ja = 60 )

#Luo tarra ja valintaruutupainike
Label ( tkobj, teksti = 'Lempipeli:' ) .paikka ( x = 100 , ja = 100 )
g1 = IntVar ( )
g2 = IntVar ( )
g3 = IntVar ( )
Tarkistuspainike ( tkobj, teksti = 'Kriketti' , muuttuja =g1 ) .paikka ( x = 210 , ja = 100 )
Tarkistuspainike ( tkobj, teksti = 'Jalkapallo' , muuttuja =g2 ) .paikka ( x = 290 , ja = 100 )
Tarkistuspainike ( tkobj, teksti = 'Koripallo' , muuttuja =g3 ) .paikka ( x = 380 , ja = 100 )

#Määritä tuple-arvot
data = ( 'Bangladesh' , 'Japani' , 'USA' )
#Luo tarra ja yhdistelmälaatikko
Label ( tkobj, teksti = 'Maa : ' ) .paikka ( x = 100 , ja = 140 )
countryVal = StringVar ( )
Yhdistelmälaatikko ( tkobj, arvot =data, tekstimuuttuja =maaVal ) .paikka ( x = 220 , ja = 140 )

#Luo tarra ja tekstikenttä
Label ( tkobj, teksti = 'Osoite:' ) .paikka ( x = 100 , ja = 180 )
addr = ( tk.Teksti ( tkobj, korkeus = 3 , leveys = kaksikymmentä ) )
addr.place ( x = 220 , ja = 180 )

#Luo painike painikkeenkäsittelijällä
Painike ( tkobj, teksti = 'Lähetä' , komento =näytä_arvot ) .paikka ( x = 250 , ja = 250 )

#Suorita Tkinter
tkobj.mainloop ( )

Lähtö:

Seuraava ikkuna tulee näkyviin komentosarjan suorittamisen jälkeen:

Täytä lomakkeen kentät ja paina 'Lähetä'-painiketta.

Näkyviin tulee seuraava viestilaatikko lähetetyillä arvoilla:

Johtopäätös

Menetelmät Python tkinter -moduulin käyttämiseksi GUI-sovellusten luomiseen esitetään tässä opetusohjelmassa useilla esimerkeillä.