Tkintera progresa josla

Tkintera Progresa Josla



Varat atjaunināt klientam ilgstoša procesa statusu, izmantojot progresa joslas logrīku. Logrīka mērķis ir nodrošināt lietotājam pārliecību, ka kaut kas notiek. Tam ir divi dažādi darbības režīmi. Noteiktā režīmā logrīks parāda norādi, kas pārvietojas iepriekš noteiktā virzienā. Logrīks tiek pārvietots nenoteiktā stāvoklī, lai ļautu klientam radīt iespaidu, ka kaut kas notiek. Visā šajā stilā signāls svārstās uz priekšu un atpakaļ starp logrīka ekstremitātēm. Šajā apmācībā tiks apskatīta noteikta un nenoteikta progresa joslu izmantošana Python.

Sāksim ar Python Tkinter bibliotēkas konfigurāciju. Pēc veiksmīgas termināļa palaišanas izmēģiniet šo vaicājumu, lai konfigurētu Tkinter pakotni. Pirms šīs instrukcijas izmantošanas pārliecinieties, vai Python jau ir instalēts.

$ sudo apt instalēt python3-tk







1. piemērs

Sāksim ar mūsu pirmo Python piemēru, lai izmantotu Tkinter moduli, lai izveidotu noteiktu progresa joslu tā GUI. Tādējādi mēs esam izveidojuši jaunu Python failu ar nosaukumu “new.py” un pievienojuši šādu kodu. Mēs sākām šo kodu, pirmajā rindā importējot visus pakārtotos objektus no Python bibliotēkas Tkinter. Pēc tam mēs importējām klases objektu “ttk” no Tkinter moduļa otrajā koda rindā.



Tk() klases konstruktors ir izsaukts un saglabājis savu objektu mainīgajā “t”. Funkcija “title” ir sasniegta ar objekta mainīgo “t”, lai izveidotu GUI nosaukumu. GUI Tkinter loga izmērs ir iestatīts uz “300 × 200”, izmantojot funkciju ģeometrija (). Progresa joslu ģenerēs lietotāja definēta funkcija “Pbar()”. Mēs apskatīsim šo funkciju šī raksta pēdējā daļā.



Mēs esam izveidojuši mainīgo “p” pie 8 th šī Python koda rindiņa, kas izmantoja Progressbar() funkciju, izmantojot klases objektu “ttk”, lai izveidotu progresa joslu GUI ekrānā. Objekts “t” ir nodots tam, kamēr tā orientācija ir iestatīta uz Horizontāli, tā garums ir iestatīts uz 400, un tā režīms ir noteikts, t.i., tas virzīsies tikai noteiktā virzienā. “Y” ass polsterējums ir iestatīts uz 30, šai progresa joslai izmantojot funkciju “pack()”.





Pēc tam esam izveidojuši jaunu pogu “b”, izmantojot funkciju Button() un nododot tai objektu “t”, kādu tekstu un komandu, kas jāizpilda pēc noklikšķināšanas uz pogas, t.i., funkcija ar nosaukumu funkcija “Pbar”. Funkcija Pbar () palielinātu progresa joslas “p” vērtību par desmit un atgrieztos pie mainīgā “b”. Pogas “y” ass polsterējums ir iestatīts uz “10”, izmantojot funkciju pack(), un funkcija mainloop() ir šeit, lai izietu visu izpildi.



Pēc Python koda aizpildīšanas mēs to saglabājām un izpildījām konsolē, izmantojot vaicājumu “python3”, kam sekoja faila nosaukums “new.py”:

$ python3 new.py

Tā ir palaista Python Tkinter GUI ar nosaukumu “Progresa josla” mūsu konsoles ekrānā. Nākamajā attēlā ir tikai progresa josla bez apstrādes. Vispirms jāpieskaras pogai.

Pēc pieskaršanās pogai “Pieskarieties šeit!”, zilā norises josla ir parādīta šādi:

Pēc trīs secīgiem klikšķiem mēs saņēmām šādu progresu bez kustības:

Kad esam sasnieguši progresa joslas beigas, mēs nevaram virzīties tālāk, t.i., noteikta progresa josla.

2. piemērs

Apskatīsim nenoteiktas progresa joslas izveidi, kas var virzīties uz priekšu un atpakaļ progresa apgabalā, izmantojot Tkinter GUI Python moduli. Tātad, mēs esam sākuši šo Python kodu, importējot Tkinter moduli kā 'tk' un ttk objektu no klases 'ttk'. Objekts tk ir atmests, lai iegūtu konstruktora “Tk()” rezultātu un saglabāts mainīgajā “t”.



Mainīgais “t” ir izmantots kopā ar funkciju title(), lai GUI virsrakstu pievienotu līdzās funkcijai geometry(), lai noteiktu parādāmā GUI loga izmēru. Funkcija grid() ir izsaukta ar mainīgo “t”, lai sakārtotu GUI tabulas formātā.

Pēc tam mēs izmantojām mainīgo “p”, lai izveidotu progresa joslu, izmantojot ttk klases objekta funkciju Progressbar () ar tādu pašu “t” mainīgo, horizontālo orientāciju, 300 garumiem un nenoteiktu režīmu. Progresa josla ir sakārtota tabulas veidā, izmantojot funkciju “grid()”, kas ir izmantojusi īpašo polsterējumu “x” un “y” asīm. Mēs esam izveidojuši divas pogas “s” un “e”, lai sāktu progresa joslas kustību, pabeigtu to un pārvietotu uz priekšu un atpakaļ.







Funkcijas grid() lipīgais parametrs abām pogām nosaka virzienu, t.i., austrumi un rietumi. Komandas 'start' un 'stop' ir iestatītas abām pogām 9 th un 11 th līniju. Ar mainloop() funkcijas izpildi mūsu programma ir pabeigta un gatava lietošanai pēc tās saglabāšanas.





Izpilde ir notikusi, izmantojot līdzīgu metodi.





$ python3 new.py

Palaižot GUI, tika parādīts šāds ekrāns:



Pēc pogas “Pieskarieties, lai sāktu” nospiešanas progresa josla sāka virzīties uz priekšu.

Sasniedzot galu, tas virzās pretējā virzienā, t.i., uz Rietumiem.

Kad esat pabeidzis pieskarties pogai “Pieskarieties, lai apturētu”, progresa josla atkal ir iestatīta sākotnējā pozīcijā.

Secinājums

Šajā rakstā tika parādīta progresa joslas izmantošana Tkinter GUI. Mēs vienkārši esam izmantojuši Tkinter klases objektus, lai izsauktu dažādus logrīkus, lai padarītu Python GUI interaktīvāku. Mēs savos piemēros esam apsprieduši noteiktu un nenoteiktu progresa joslu izmantošanu. Mēs ceram, ka jums patiks to īstenošana.