进度条

在处理长计算时,小部件 ttk.progress 非常有用,这样用户就知道程序正在运行。下面,给出了每 0.5 秒更新一次进度条的示例:

功能更新进度条

def progress(currentValue):
    progressbar["value"]=currentValue

设置最大值

maxValue=100

创建进度条

progressbar=ttk.Progressbar(master,orient="horizontal",length=300,mode="determinate")
progressbar.pack(side=tk.TOP)

当进度条受程序控制时,使用确定模式。

初始值和最大值

currentValue=0
progressbar["value"]=currentValue
progressbar["maximum"]=maxValue

每 0.5 秒模拟一次进度

divisions=10
for i in range(divisions):
    currentValue=currentValue+10
    progressbar.after(500, progress(currentValue))
    progressbar.update() # Force an update of the GUI