progress_meter er en Python-modul, der giver en meget enkel statuslinje for lange opgaver.
Designet er noget der ligner EasyGUI, så simple scripts til at være GUI-ceret uden at blive omstruktureret i tilbagekald og en begivenhed loop. Den kan naturligvis bruges som et supplement til de værktøjer i EasyGUI. Interfacet kan ikke være helt så simpelt, men forhåbentlig er det kun lidt mere kompliceret.
progress_meter er baseret på denne kode af Michael Lange.
Det høje niveau grænseflade ser sådan ud:
fra progress_meter import withprogress
withprogress (300, color = "green")
def demo (foo, bar = Ingen):
& Nbsp; for jeg i området (300):
& Nbsp; # Gør et (eller nogle få) trin i behandlingen, så ...
& Nbsp; udbytte i
demo ()
Du kan bruge undtagelser for at se, om brugeren annullerede processen, inden det gennemført:
prøv:
& Nbsp; demo ()
undtagen UserCancelled:
& Nbsp; print ("Aflyst")
andet:
& Nbsp; print ("Afsluttet")
Der er også en lavere niveau grænseflade, hvor du instantiere vinduet direkte:
fra progress_meter import MeterWindow
def _demostep (meter, værdi):
& Nbsp; meter.set (værdi)
& Nbsp; hvis værdi <1,0:
& Nbsp; værdi = værdi + 0,005
& Nbsp; meter.after (50, lambda: _demostep (meter, værdi))
& Nbsp; andet:
& Nbsp; meter.set (værdi, "Demo succesfuldt afsluttet")
def demo ():
& Nbsp; root = MeterWindow (className = 'meter demo)
& Nbsp; root.meter.set (0,0, 'Start demo ... ")
& Nbsp; root.after (1000, lambda: _demostep (root.meter, 0,0))
& Nbsp; root.mainloop ()
Hvis du vil bruge statuslinjen alene i en mere komplet GUI, kan du bruge måleren klasse fra dette modul (som underklasser tkinter.Frame)
Krav :.
< p>- Python
Kommentarer ikke fundet