Tkinter sąrašo dėžutė

Tkinter Saraso Dezute



Numatytasis Python GUI įrankių rinkinys vadinamas Tkinter. Python ir Tkinter derinys leidžia greitai ir paprastai kurti GUI programas. „Tkinter“ teikia veiksmingą į objektą orientuotą Tk GUI įrankių rinkinio šliuzą. Sukurti Gui sąsają naudojant Tkinter yra paprasta. Šiame vadove parodysime, kaip naudoti „Tkinter“ biblioteką kuriant „Tkinter“ GUI ir pridėti prie jos sąrašo valdiklį.

Pradėdami naudotis Ubuntu 20.04 sistema, atnaujiname savo sistemą naudodami kai kurias komandas terminalo apvalkale. Paleidžiame terminalo programą paspausdami Ctrl+Alt+T ir pridedame tinkamą „atnaujinimo“ instrukciją. Vykdymui reikalingas prisijungusio vartotojo slaptažodis, o pridėjus slaptažodį atnaujinama visa sistema.







Sėkmingai įdiegę python3, turite įdiegti Python tk įrankį, kad kode galėtumėte naudoti skirtingus jos valdiklius. Norėdami įdiegti, išbandykite šią komandą terminalo užklausos srityje:





Prieš įdiegiant šią priemonę, reikia patvirtinti. Paspauskite „y“ uždavus šį klausimą:





Įdiegę visą šią priemonę, terminalo ekrane gauname šį „tk“ valdiklio dialogo langą. Jame yra du mygtukai – vienas skirtas išeiti, o kitas – tiesiog spustelėjimui.



Nuolat spustelėjus „Spustelėkite mane! laužtinius skliaustus aplink jame esantį tekstą. „Tk“ dialogo ekranas tampa didesnis. Bakstelėjus „Baigti
mygtuką, tk dialogas uždaromas esant bet kokiai problemai.

1 pavyzdys:

Pradedame savo pirmąjį Python pavyzdį, norėdami parodyti Tkinter Listbox naudojimą programoje. Tam sukuriame naują Python failą ir importuojame visas susijusias „Tkinter“ bibliotekos funkcijas. GUI objektas „t“ sukuriamas kode naudojant funkciją „Tk()“. Tai leidžia sukurti pagrindinį GUI langą mūsų ekrane. Funkcija Geometry () iškviečiama naudojant Tkinter objektą „t“, kad būtų sukurtas konkretaus dydžio ekranas.

Dabar Tkinter GUI ekrane sukuriame teksto tipo valdiklio etiketę „l“ su tekstu valdikliui pažymėti. Po to mes sukuriame valdiklį Listbox, naudodami objektą „t“ funkcijos „Listbox“ parametruose. Funkcija insert(), naudojanti Listbox valdiklį, iškviečiama, kad įtrauktų 5 naujas eilutės reikšmes į sąrašo laukelį su nurodyta numeracija, kad būtų sukurta tvarka.

Etiketė „l“ pakuojama po to naudojant funkciją pack(). Sąrašo dėžutė yra supakuota. Funkcija mainloop() iškviečiama naudojant Tkinter objektą „t“, kad būtų sukurta pagrindinė vartotojo sukurta įvykių kilpa. Taip Python naudojamas sąrašo laukelis per Tkinter modulį. Dabar programa baigta ir paruošta naudoti. Išsaugokime jį faile ir išeikime.

#!/usr/bin/python3
iš tkinter importo *
t = Tk ( )
t.geometrija ( „200 x 250“ )
l = etiketė ( t, tekstas = 'Mano mėgstamiausios spalvos...' )
listbox = Sąrašo dėžutė ( t )
listbox.insert ( 1 , 'baltas' )
listbox.insert ( du , 'juodas' )
listbox.insert ( 3 , 'raudona' )
listbox.insert ( 4 , 'mėlyna' )
listbox.insert ( 5 , 'Geltona' )
l.pack ( )
listbox.pack ( )
t.mainloop ( )

Uždarius failą, dar kartą paleidžiame terminalą ir pateikiame pagrindinio katalogo turinį naudodami „ls“ nurodymą. Tai rodo, kad naujai atnaujintas Python failas taip pat yra. Python failui vykdyti naudojame python3.

Vykdant mūsų ekrane atidaromas šis „Tkinter“ GUI ekranas pavadinimu „tk“. Pilkos spalvos srityje galite matyti pažymėtą tekstą. Baltoje srityje galite matyti sąrašo laukelio elementus, t. y. elementus, įtrauktus į sąrašo laukelį naudojant objektą Listbox. Galite uždaryti GUI Tkinter ekraną naudodami kryžiaus ženklą, pateiktą pačiame dešiniajame kampe raudonai.

2 pavyzdys:

Pažvelkime į Listbox naudojimą kartu su kai kuriais kitais valdikliais, kad jis būtų šiek tiek interaktyvus. Tas pats Python scenarijus naudojamas tame pačiame kodo faile su nedideliais kai kurių eilučių pakeitimais. Prie šio kodo 12 eilutės pridedame naują kodo eilutę. Tkinter GUI ekrane sukuriame mygtuką „b“, naudodami funkciją „Mygtukas“, naudodami tekstą „Ištrinti“ kaip mygtuko etiketę ir „Tkinter“ objektą „t“.

Trečiajame funkcijos Button() parametre yra sąrašo elementų ištrynimo komanda naudojant ANCHOR, t. y. elemento pasirinkimas ir pašalinimas naudojant mygtuką. Etiketė, sąrašo laukelis ir mygtukas yra supakuoti. Pagrindinis įvykių ciklas yra sukurtas šiai GUI vykdyti.

#!/usr/bin/python3
iš tkinter importo *
t = Tk ( )
t.geometrija ( „200 x 250“ )
l = etiketė ( t, tekstas = 'Mano mėgstamiausios spalvos...' )
listbox = Sąrašo dėžutė ( t )
listbox.insert ( 1 , 'baltas' )
listbox.insert ( du , 'juodas' )
listbox.insert ( 3 , 'raudona' )
listbox.insert ( 4 , 'mėlyna' )
listbox.insert ( 5 , 'Geltona' )
b = Mygtukas ( t, tekstas = 'Ištrinti' , Commnd = lambda sąrašo laukelis =listbox: listbox.delete ( INKRAS ) )
l.pack ( )
listbox.pack ( )
b.pack
t.mainloop ( )

Tą patį failą vykdome jį išsaugoję.

Išvestis rodo 5 elementų sąrašo laukelį kartu su mygtuku „Ištrinti“.

Mes pasirenkame „Mėlynojo“ sąrašo elementą ir paspaudžiame mygtuką „Ištrinti“.

Pasirinktas elementas ištrinamas iš sąrašo laukelio.

Dabar atnaujiname tą patį kodą, kad pridėtume papildomų funkcijų. Taigi, 3 eilutėje atnaujiname GUI lango dydį. 5-oje kodo eilutėje pridedame funkcijos „showSelected()“ apibrėžimą. Ši funkcija iškviečia funkciją config() naudodama šį objektą, kad gautų pasirinkto elemento tekstą iš sąrašo laukelio „Lbx“. 15 eilutėje mygtukas iškviečia funkciją showSelected() savo komandos parametre.

#!/usr/bin/python3
iš tkinter importo *
t = Tk ( )
t.geometrija ( '400x300' )
def showPasirinkta ( ) :
rodyti.konfig ( tekstą =Lbx.get ( INKRAS ) )
l = etiketė ( t, tekstas = 'Mano mėgstamiausios spalvos...' )
Lbx = sąrašo laukelis ( t )
Lbx.pack ( )
Lbx.insert ( 1 , 'baltas' )
Lbx.insert ( du , 'juodas' )
Lbx.insert ( 3 , 'raudona' )
Lbx.insert ( 4 , 'mėlyna' )
Lbx.insert ( 5 , 'Geltona' )
Mygtukas ( t, tekstas = „Rodyti pasirinktus“, commnd=showSelected).pack()
rodyti = etiketė (t)
parodyti.pack
t.mainloop()

Vykdome atnaujintą kodą.

Sukuriamas šis sąrašo laukelio ekranas su mygtuku „Rodyti pasirinktus“.

Mes pasirenkame sąrašo laukelio elementą 'Balta' ir bakstelėkite mygtuką 'Rodyti pasirinktus'. Po mygtuko GUI ekrane rodomas tekstas „Baltas“.

Išvada

Tai viskas apie Tkinter modulio naudojimą Python. Iš viso pridėjome 2 paprastus „Python“ pavyzdžius, kad pamatytume, kaip galime naudoti „Listbox“ Python kode per „Tkinter“ biblioteką. Matėme, kaip galima naudoti įvairius valdiklius, kad Tkinter GUI būtų interaktyvesnė, ypač kuriant sąrašo laukelį ir susijusius mygtukus.