无法将进度条颜色从 tkinter 更改为红色

Cant change Progressbar color from tkinter to red

我见过一些更改进度条颜色的解决方案,但是,当尝试应用它们时,它不起作用并保持绿色。

我可能漏掉了一个愚蠢的东西。

这是一个垂直的进度条,填满需要10秒。我只想让条形图变成红色而不是绿色。

from tkinter import *
from tkinter.ttk import *
import time
root = Tk()
root.geometry("500x500")
seconds = 10
s = Style()
s.configure("red.Vertical.TProgressbar", foreground = 'red', background = 'red', throughcolor = 'red')
progress = Progressbar(root, orient = VERTICAL, length = 9999999, mode = 'determinate')
progress.configure(style = 'red.Vertical.TProgressbar')
progress.pack(ipadx = 200000, padx = 50, pady = 50) 
start_time = time.time()
elapsed_time = time.time() - start_time

while elapsed_time/seconds*100 < 100:
    progress['value'] = elapsed_time/seconds*100
    elapsed_time = time.time() - start_time
    root.update()
    time.sleep(0)

试试这个:

import time
import tkinter  as tk
from  tkinter import  ttk
root = tk.Tk()
root.geometry("500x500")
seconds = 10
s = ttk.Style()
s.theme_use('clam')
s.configure("red.Vertical.TProgressbar", foreground='red', background='red')
progress = ttk.Progressbar(root, style="red.Vertical.TProgressbar", orient="vertical", length=600, mode="determinate", maximum=4, value=1)
progress.pack(ipadx = 200000, padx = 50, pady = 50)

start_time = time.time()
elapsed_time = time.time() - start_time

while elapsed_time/seconds*100 < 100:
    progress['value'] = elapsed_time/seconds*100
    elapsed_time = time.time() - start_time
    root.update()
    time.sleep(0)

我试过你的变体后也变绿了。