Stronę tą wyświetlono już: 7317 razy
Kontrolka Progressbar została "ukryta" w module ttk modułu tkinter, toteż i nie zaliczyłem jej do poczetu kontrolek standardowo dostępnych bezpośrednio z poziomu modułu tkinter. Kontrolka ta oczywiście służy do graficznego wyświetlania postępu realizacji jakiegoś czasochłonnego zadania, którego program nie jest w stanie wykonać w czasie rzeczywistym. Nie gadajmy jednak zbyt wiele, albowiem dobry kod ponoć więcej znaczy niż tysiąc słów.
import tkinter as tk
import tkinter.ttk as ttk
class Application:
def __init__(self):
self.window = tk.Tk()
self.window.geometry("200x50")
self.lb = tk.Label(text = "Pasek podstępu:")
self.lb.place(x = 0, y = 0)
self.pb_frame = tk.Frame(self.window, width = 300)
self.pb_frame.place(x = 0, y = 20, relwidth = 1.)
var = tk.IntVar()
var.set(10)
self.progressbar = ttk.Progressbar(self.pb_frame, maximum = 100, variable = var, orient='horizontal', mode='determinate') # tworzenie poziomego paska postępu
self.progressbar.pack(expand=True, fill=tk.BOTH, side=tk.TOP)
self.window.mainloop()
apl = Application()
Pasek postępu musiał zostać zamknięty w kontrolce typu Frame, która sama w sobie nie ma wyglądu a jej przeznaczeniem jest zgrupowanie kontrolek lub kontrola położenia i rozmieszczenia jakiejś kontrolki. Program po odpaleniu wygląda jak na załączonym poniżej rysunku.