Tkinter ComboBox

Tkinter Combobox



ttk paketas, unikali Python Tkinter modifikacija, pristato šį papildomą komponentą. Python Tkinter ComboBox vienu metu rodo kiekvieną pasirinkimą iš išskleidžiamojo meniu 1. Jis turi šiuolaikišką išvaizdą, todėl tinka vietoms, kuriose ekspozicija yra labai svarbi. Programėlė Entry yra Python ComboBox klasės galimybė. Dėl to jis prideda keletą papildomų pasirinkimų ir funkcijų, taip pat paveldi keletą iš Entry klasės.

Esminis valdiklis, kurį galima pamatyti keliose programose, yra ComboBox. Vartotojui pateikiamas pasirinkimo alternatyvų sąrašas. Jis turi kelias vertes ir vienu metu rodoma tik viena. Šiandienos pamoka apims, kaip naudoti „ComboBox“ sistemoje „Linux“ naudojant „Tkinter“.

1 pavyzdys:

Pradėkime nuo paties pirmojo Python Tkinter modulio pavyzdžio. Per terminalo konsolę sukuriame naują Python failą su plėtiniu 'py'. Po to galite naudoti bet kurį pasirinktą redaktorių, kad atidarytumėte naujai sugeneruotą Python failą iš failų naršyklės. Šį „Python“ kodą pradedame importuodami Tkinter biblioteką kode kartu su visais jos antriniais objektais, klasėmis ir įtaisytaisiais objektais.







Importuojame jo ttk objektą, kuris bus naudojamas kode. Pirma, mes iškviečiame Tkinter funkciją Tk(), kad pridėtume naują objekto reikšmę „t“. Objektas „t“ naudojamas geometrijos funkcijai iškviesti, kad būtų sukurta „200 × 150“ grafinė vartotojo sąsaja. Šiame pirmame pavyzdyje mes naudojame Tkinter „frame()“ metodą, kad sukurtume GUI rėmelį konsolės ekrane. Rėmelio objektas „f“ čia uždaromas naudojant Tkinter pack() funkciją.



Po to sukuriame eilučių tipų sąrašą „l“, kuriame iš viso yra 5 eilučių reikšmės. Po to mes naudojame objektą Tkinter ttk, kad iškviestume Tkinter ComboBox funkciją rėmelyje „f“. Jai perduodamas sąrašas „l“. Šis ComboBox išsaugomas kintamajame „C“. Mes nustatome ComboBox etiketę naudodami funkciją „set“ ir supakuojame ComboBox tiksliais užpildais. Dabar mes vykdome mainloop () funkciją, kad vykdytume visą Tkinter programą.







Baigę Python scenarijų, išsaugome kodą su Ctrl+S ir grįžtame į Linux sistemos apvalkalo konsolę. Bandome Python3 instrukciją apvalkale, po kurio nurodomas Python failo pavadinimas, kad paleistume failą, kaip parodyta toliau:

$ python3 test.py



Po užklausos vykdymo savo konsolės ekrane gauname šią Tkinter GUI pavadinimu „tk“. GUI ekrane yra kombinuotasis laukelis, t. y. išskleidžiamasis sąrašas, kurio pavadinimas „Pasirink 1 spalvą“ ir trikampio ženklas jį atidaryti.

Paspaudus trikampio ženklą, rodomas ilgas išskleidžiamasis sąrašas su visomis galimomis parinktimis. Matote, kad iš viso turime 5 pasirinkimus.

Tarkime, išskleidžiamajame sąraše pasirenkate spalvą „Juoda“. Pamatysite, kad pasirinkta spalva rodoma išskleidžiamojo sąrašo pavadinimo srityje. Likęs sąrašas yra paslėptas.

2 pavyzdys:

Pažvelkime į kitą pavyzdį, šį kartą naudodami kitą metodą, kad sukurtume „ComboBox“ „Tkinter“. Taigi, šį Python kodą pradedame importuodami Tkinter modulį tame pačiame Python faile kaip ir „tk“, kartu importuodami jo ttk klasę. Po to importuojame funkciją showinfo() iš Tkinter modulio pranešimų dėžutės klasės. Taip pat importuojame mėnesio_pavadinimo kintamąjį iš Python kalendoriaus modulio.

Iškviečiame funkciją tk() su Tkinter modulio objektu tk ir konstruktoriaus rezultatą išsaugome kintamajame 't'. Geometrijos funkcija iškviečiama su nurodytais parametrais, kad būtų sukurta konkretaus dydžio Tkinter GUI. Funkcija title() iškviečiama su parametru „Combobox Illustration“, kad būtų pavadinta „Tkinter“ GUI, o „Label“ funkcija iš ttk klasės, kad būtų sukurta etiketė „l“. Pakuotės funkcija naudojama užpildyti etiketę „l“. Kintamasis „mn“ sukuriamas naudojant „tk“ klasės funkciją StringVar(). ComboBox „mcb“ sukuriamas naudojant „ComboBox“ funkciją ir kintamąjį tekstą „mn“. Mcb ComboBox užpildomas eilutės reikšmėmis iki 13 naudojant kintamąjį month_name, naudojamą cikle 'for'.

„Mcb“ ComboBox būsena nustatyta kaip tik skaitymo ir ji yra supakuota. Funkcija select() sukurta norint iškviesti funkciją showinfo() ir sukurti įspėjimo dialogo langą pavadinimu „Patvirtinimas“ ir pranešimu „Jūs pasirinkote {bet kokią reikšmę}. Funkcija bind() iškviečiama su 'mcb' ComboBox, pridedant 'ComboboxSelected' parametrus ir 'keitimo' funkciją. Funkcija mainloop() vykdoma norint pašalinti Tkinter programą. Išsaugokime jį prieš paleisdami.

Vykdome šį failą naudodami python3 užklausą.

$ pitonas 3 test.py

Šis „Tkinter“ ekranas pavadinimu „ComboBox illustration“ rodomas taip:

Kai spustelėjame „ComboBox“ trikampio ženklą po pavadinimu „Pasirinkite mėnesį“, rodomi mėnesio pavadinimai.

Kai pasirenkame „Liepa“, tai rodoma etiketėje ir rodomas dialogo įspėjimas bei pranešimas. Norėdami tęsti, paspauskite Gerai.

Išvada

Viskas apie Python modulio „Tkinter“ naudojimą norint sukurti kombinuotąjį laukelį GUI lange. Norėdami tai padaryti, išbandėme du paprastus, tačiau skirtingus Python pavyzdžius, kad pasiektume tikslą, naudodami funkciją frame() ir įprastą ComboBox kūrimo būdą GUI. Mes įtraukėme pavyzdinius kodus abiem atvejais ir atlikome keletą pakeitimų po kodų vykdymo.