Tkinter -Fortschrittsleiste

Tkinter -Fortschrittsleiste

Bei der Arbeit mit GUIs ist es oft eine großartige Option, den Betrag des Prozesses in Form einer Fortschrittsleiste zu präsentieren. Da es sich bei dem Tkinter um eine Gui-Building-Bibliothek von Python handelt, bietet er eine integrierte Methode zum Aufbau einer Fortschrittsleiste problemlos. Diese Anleitung zeigt Ihnen, wie nicht nur eine Fortschrittsleiste erstellt, sondern auch, wie Sie zwei verschiedene Modi davon verwenden und den Wert der Fortschrittsleiste ändern können.

So bauen Sie eine Fortschrittsleiste in Tkinter Python auf?

Sie müssen das „TTK“ -Paket importieren und seine ProgressBar () -Methode verwenden.

progvar = ttk.ProgressBar (Framevar, Orient, Länge, Modus)

In der Syntax der ProgressBar () -Methode:

  • Progvar: Ist die Variable, mit der nach ihrer Erstellung auf die verschiedenen Attribute der Fortschrittsleiste zugreifen wird
  • Framevar: Ist die Tkinter -TK
  • Orient: Dieses Argument wird verwendet, um die Ausrichtung des Fortschrittsbalkens zu definieren und festzulegen
  • Länge: Dieses Argument wird verwendet, um den Fortschrittsbalken zu definieren und zu längen
  • Modus: Das Modus -Argument wird verwendet, um den Modus entweder auf "zu bestimmen" oder "unbestimmt" festlegen

Erstellen wir eine einfache Fortschrittsleiste in TKinter, die mit dem folgenden Code um 10% bei der Drücke einer Taste verläuft:

#Start durch Importieren der Tkinter -Bibliotheken
vom Tkinter -Import *
von Tkinter importieren TTK
#Nach dem Import erstellen Sie den Rahmen mit der Methode TK ()
Frame = tk ()
rahmen.Titel ("LinuxHint - Fortschrittsleiste")
rahmen.Geometrie ("400x200")
Fenster = Frame (Rahmen)
#Method, um den Fortschrittswert zu erhöhen
Def pbar ():
Progbar ['Wert']+= 10
#Build ProgressBar
progbar = ttk.ProgressBar (Frame, Orient = Horizontal, Länge = 400, Modus = "Deterinate")
Progbar.Pack (pady = 40)
#Build
btn = button (Frame, text = "Klicken Sie hier klicken!", Befehl = pbar)
Btn.Pack (pady = 10)
rahmen.Hauptschleife()

In diesem Code -Snippet:

  • Importieren Sie zunächst das "TKinter" -Paket und auch das "TTK" -Paket, das die ProgressBar () -Methode enthält
  • Erstellen Sie einen Rahmen mit der Methode TK ()
  • Definieren Sie die Methode pbar (), die die Fortschrittsbalkenvariable „Progbar“ verwendet, um auf das Attribut „Wert“ zuzugreifen und sie um 10 zu erhöhen
  • Erstellen Sie die Variable „Progbar“ unter Verwendung der ProgressBar () -Methode und stellen Sie die Ausrichtung auf horizontal und modus fest, um zu bestimmen
  • Erstellen Sie zuletzt eine Schaltfläche, die die PBAR () -Methode aufruft.

Wenn dieses Code -Snippet ausgeführt wird, wird das folgende TKINTER -Fenster auf Ihrem Computer erstellt:

Wie Sie im Ausgabe -GIF sehen können, wurde die Fortschrittsleiste erstellt, und sie ging weiter nach dem Klicken auf die Schaltfläche voran. Sobald die Fortschrittsleiste jedoch die maximale Länge erreicht hat, tritt bei der Taste keine weitere Änderung auf.

Wie man die Fortschrittsleiste in Tkinter Python hin und her macht?

Damit die Fortschrittsbalke beim Drücken der Taste hin und her gehen muss, müssen Sie die „unbestimmte“ Fortschrittsleiste verwenden. Mit einem „unbestimmten“ Fortschrittsbal. Vielmehr ist das Ziel nur zu zeigen, dass eine Aktion/ein Ereignis in Bearbeitung ist.

Um eine unbestimmte Fortschrittsleiste zu erstellen, ändern Sie einfach das Modusargument in der ProgressBar () -Methode auf „unbestimmt“:

progbar = ttk.ProgressBar (Frame, Orient = Horizontal, Länge = 400, Modus = "Deterinate")

Platzieren Sie diese Zeile im vorherigen Beispiel, führen Sie das Programm aus und erstellen Sie das folgende Tkinter -Fenster:

Wie Sie im Ausgabe -GIF sehen können, hielt die unbestimmte Fortschrittsleiste nicht an der 100% igen Marke an, sondern begann auf den Schaltflächenklicks hin und her zu gehen.

So setzen Sie die Fortschrittsleiste in Tkinter Python zurück?

Um den Wert der Fortschrittsleiste zurückzusetzen, verwenden Sie einfach die Variable der Fortschrittsleiste, um auf das Attribut „Wert“ zuzugreifen, und setzen Sie ihren Wert gleich Null fest. Eine gute Praxis besteht darin, den Wert der Fortschrittsleiste bei einem Knopfdruck zurückzusetzen.

Um dies zu demonstrieren, nehmen Sie diesen modifizierten Code vom ersten Beispiel: Nehmen Sie aus dem ersten Beispiel:

vom Tkinter -Import *
von Tkinter importieren TTK
#Nach dem Import erstellen Sie den Rahmen mit der Methode TK ()
Frame = tk ()
rahmen.Titel ("LinuxHint - Fortschrittsleiste")
rahmen.Geometrie ("400x200")
Fenster = Frame (Rahmen)
#Method, um den Fortschrittswert zu erhöhen/zurückzusetzen
Def pbar ():
Progbar ['Wert']+= 10
Def resetpbar ():
Progbar ['Wert'] = 0
#Build ProgressBar
progbar = ttk.ProgressBar (Frame, Orient = Horizontal, Länge = 400, Modus = "Indetermininat")
Progbar.Pack (pady = 40)
#BUILD BLITONEN
btn = button (Frame, text = "progress", command = pbar)
Btn.Pack (pady = 10)
btn2 = button (Frame, text = "Reset", command = resetpbar).Pack (padx = 10)
rahmen.Hauptschleife()

Wenn dieser Code ausgeführt wird, erzeugt er das folgende Verhalten des Tkinter -Fensters auf Ihrem Computer:

Sie können beobachten, dass der Fortschritt auf 0 zurückgesetzt wird.

Abschluss

Fortschrittsbalken sind eine großartige Möglichkeit, den Endbenutzer über den Abschlussprozentsatz oder den Ausführungsstatus einer Aktion zu informieren. Verwenden Sie die ProgressBAR () -Methode des „TTK“ -Pakets, um eine Fortschrittsleiste in TKinter zu erstellen, und übergeben Sie die Werte für Rahmen, Ausrichtung, Länge und Modus. Um den Fortschrittswert der Fortschrittsbalken zu ändern, greifen Sie auf sein Attribut „Wert“ zu und ändern Sie seinen Wert gemäß Ihren Anforderungen.