【发布时间】:2017-10-25 16:35:34
【问题描述】:
我有一个进度条,它会根据我将刻度移动到的值更改其值。现在我想让进度条根据刻度移动到的值实时改变颜色。这是我为此创建的方法:
def volumelevel():
s = ttk.Style()
s.theme_use("classic")
if scalevar.get() <= 25:
s.configure("green.Horizontal.TProgressbar", background='green')
scale.configure(variable=scalevar, command=lambda x: progress.configure(value=scalevar.get()))
progress.configure(style="green.Horizontal.TProgressbar")
elif scalevar.get() <= 75:
s.configure("yellow.Horizontal.TProgressbar", background='yellow')
scale.configure(variable=scalevar, command=lambda x: progress.configure(value=scalevar.get()))
progress.configure(style="yellow.Horizontal.TProgressbar")
elif scalevar.get() <= 90:
s.configure("orange.Horizontal.TProgressbar", background='orange')
scale.configure(variable=scalevar, command=lambda x: progress.configure(value=scalevar.get()))
progress.configure(style="orange.Horizontal.TProgressbar")
elif scalevar.get() <= 100:
s.configure("red.Horizontal.TProgressbar", background='red')
scale.configure(variable=scalevar, command=lambda x: progress.configure(value=scalevar.get()))
progress.configure(style="red.Horizontal.TProgressbar")
我知道这个方法确实有效,因为我在一个按钮内调用它来测试它,当我调整比例然后单击按钮时,进度条颜色会改变。
我在我的比例对象中调用此方法,但是当我移动比例滑块时,无论比例设置为什么值,进度条都会保持绿色(如方法中指定的那样)。如何让进度条颜色随比例实时变化?
更新:我创建了一个 tkinter 条目以使用比例实时显示值,然后使该方法根据值更改条目的前景,并且由于某种原因它可以工作,但是然而,进度条却没有。
【问题讨论】:
标签: python-3.x tkinter progress-bar