2024-06-16 20:49:05 发布
网友
有人知道我如何改变我的ttk.progressBar的颜色吗?现在它是绿色的,我希望它是蓝色的。
import ttk self.progressBar = ttk.Progressbar(frame3, length=560, maximum=100, mode='determinate'); self.progressBar.place(x=-5, y=60)
您可以更改progressbar的颜色,但这很棘手。首先,您需要了解,如果您使用默认主题,即如果您没有在tk.style中指定主题,则默认主题。然后它会将所需的所有信息传递给操作系统,操作系统将使用其样式进行绘图,而忽略传递给它的样式信息。这意味着它将在窗口等上绘制一个窗口样式的绿色进度条。您需要做的是将主题更改为ttk绘制的自定义主题。试试“clam”风格,这是ttk允许你选择的最漂亮的款式之一。这是我写的一个剧本的改编摘录:
import Tkinter as tk import ttk as ttk root = tk.Tk() frame = tk.Frame(root) frame.grid() s = ttk.Style() s.theme_use('clam') s.configure("red.Horizontal.TProgressbar", foreground='red', background='red') ttk.Progressbar(frame, style="red.Horizontal.TProgressbar", orient="horizontal", length=600, mode="determinate", maximum=4, value=1).grid(row=1, column=1) frame.pack()
这张照片证实了它的有效性
您需要使用样式来设置进度条颜色。进度条样式元素包括:
troughcolor:完整小部件的背景 背景:进度条背景 深色:底部和右侧进度条最里面的边框 浅色:左上栏进度栏最里面的边框 bordercolor:进度条和整个小部件的大纲边框(在上面的边框之外)
如果希望边框与进度条的颜色相同,可以使用以下代码:
TROUGH_COLOR = 'blue' BAR_COLOR = 'green' style.configure("bar.Horizontal.TProgressbar", troughcolor=TROUGH_COLOR, bordercolor=TROUGH_COLOR, background=BAR_COLOR, lightcolor=BAR_COLOR, darkcolor=BAR_COLOR)
我发现这对我来说行不通, 但我不想说这是错的 我发现了 使用[troughcolor]更改背景,使用[background]更改指示栏
不为我工作 s.configure("red.Horizontal.TProgressbar", foreground='red', background='red')
s.configure("red.Horizontal.TProgressbar", foreground='red', background='red')
我的工作方式 s.configure("red.Horizontal.TProgressbar", troughcolor ='gray', background='red')
s.configure("red.Horizontal.TProgressbar", troughcolor ='gray', background='red')
您可以更改progressbar的颜色,但这很棘手。首先,您需要了解,如果您使用默认主题,即如果您没有在tk.style中指定主题,则默认主题。然后它会将所需的所有信息传递给操作系统,操作系统将使用其样式进行绘图,而忽略传递给它的样式信息。这意味着它将在窗口等上绘制一个窗口样式的绿色进度条。您需要做的是将主题更改为ttk绘制的自定义主题。试试“clam”风格,这是ttk允许你选择的最漂亮的款式之一。这是我写的一个剧本的改编摘录:
这张照片证实了它的有效性
您需要使用样式来设置进度条颜色。进度条样式元素包括:
troughcolor:完整小部件的背景
背景:进度条背景
深色:底部和右侧进度条最里面的边框
浅色:左上栏进度栏最里面的边框
bordercolor:进度条和整个小部件的大纲边框(在上面的边框之外)
如果希望边框与进度条的颜色相同,可以使用以下代码:
我发现这对我来说行不通, 但我不想说这是错的 我发现了 使用[troughcolor]更改背景,使用[background]更改指示栏
不为我工作
s.configure("red.Horizontal.TProgressbar", foreground='red', background='red')
我的工作方式
s.configure("red.Horizontal.TProgressbar", troughcolor ='gray', background='red')
相关问题 更多 >
编程相关推荐