读书人

Python中的ttk的Progressbar进度条怎么

发布时间: 2012-10-20 14:12:48 作者: rapoo

Python中的ttk的Progressbar进度条如何实现?
Python中ttk的进度条如何实现,为什么我运行后,进度条不动

Python code
from tkinter import *from tkinter import ttkdef run(p):    p.start()    total = 1    for i in range(1, 10001):        total *= i    p.stop()    return totalif __name__ == "__main__":    parent = Tk()    label = Label(parent, text="TEST")    label.pack()        p = ttk.Progressbar(parent, orient = "horizontal", length=200, mode="indeterminate", value=200.0)    p.pack()           label = Label(parent, text="x")    label.pack()    x = run(p)        print(x)    parent.mainloop()


[解决办法]
你在run()里start()又接着stop()这样不行吧,一下子就玩完看不出所以然来...
[解决办法]
单线程阻塞方式是看不到进度条滚动,先看看threading模块吧,run函数里p.start()兼起动一另个工作线程就要马上返回,工作线程结束的地方才调用p.stop().
[解决办法]
或者不要用自动方式,也就是不调用start(),按需更新控件value属性,这样可能容易点...

读书人网 >perl python

热点推荐