ttk 进度条颜色 - 你能随状态改变吗?

ttk Progressbar color - can you change with state?

我正在 Windows 10 机器上使用 tkinter 构建一个 Python 3 应用程序。我完成了它的构建,现在需要为新功能添加一个进度条。进度条必须根据其值改变颜色。

我的应用程序已经全部使用 vista 主题构建,因此不能更改为 clam 主题,因为我必须为每个其他元素调整 GUI。

我发现了一个讨论 here,它暗示了使用状态来改变栏的颜色。我试过:

progressBar.state(statespec=["user3"])

尝试将我的栏变成红色,但没有成功。它顽固地保持绿色。是否有不同的方法来设置这些条的状态以获得所需的效果?

因为我的 GUI 的其余部分使用的是 vista 主题,所以我不能简单地配置样式。非常感谢任何帮助。

对于遇到类似问题的任何人,我建议查看有关更改 EntryBox 颜色的答案here

我使用了类似的解决方案来获得我想要的(同样,我在 Windows 10 机器上使用 Python 3):

from tkinter import *
from tkinter import ttk

root = Tk()
style = ttk.Style()
style.element_create("color.pbar", "from", "clam")
style.layout("ColorProgress.Horizontal.TProgressbar",
                     [('Horizontal.Progressbar.trough',
                      {'sticky': 'nswe',
                       'children': [('Horizontal.Progressbar.color.pbar',
                         {'side': 'left', 'sticky': 'ns'})]})])
style.configure("ColorProgress.Horizontal.TProgressbar", background='orange')
myProgress=ttk.Progressbar(root,orient='horizontal',
                                         length=500,mode='determinate',
                                         style='ColorProgress.Horizontal.TProgressbar')