python的Tkinter中的Windows进度条

spe*_*ler 6 python windows tkinter python-2.6 progress-bar

有没有办法在python的Tkinter,bwidget或类似的东西显示Windwos的默认进度条?我已经知道了bwidget.ProgressBar,但它产生了一个丑陋的进度条,而我的意思是显示一个有效的Windows进度条 - 绿色,发光的:

http://imageshack.us/photo/my-images/853/unledtph.png/

我需要它,因为Windows会自动在任务栏中显示我的程序的进度.而且,它看起来更好.

Bry*_*ley 10

如果您使用的是现代(2.7+)版本的Tkinter,您可以尝试ttk.ProgressBar,它是Tkinter的一部分.


Bry*_*yan 8

您可以单独安装pyttk模块.

from Tkinter import *
import ttk
root = Tk()
progressbar = ttk.Progressbar(orient=HORIZONTAL, length=200, mode='determinate')
progressbar.pack(side="bottom")
progressbar.start()
root.mainloop()
Run Code Online (Sandbox Code Playgroud)

就任务栏功能而言,Tkinter尚未提供(至少据我所知).您需要为此使用Windows API.虽然这个问题适用于PyQt,但答案应该证明是有帮助的.希望它能让你开始.


Dav*_*nan 0

最简单的解决方案似乎是将主题 Tk 与 Python 2.7 和 3.1 中包含的 tkinter.ttk 模块一起使用。进度小部件就是您想要的。

由于您似乎正在考虑其他框架,因此您可能会考虑 Qt 或 wxWidgets,它们看起来是原生的并且具有出色的 Python 绑定。