我的任务是在Tkinter上创建一个标签和按钮。按钮必须更改标签,我必须更改按钮和标签的颜色。我已经改变了背景的颜色,但我无法弄清楚如何对标签和按钮做同样的事情。
from tkinter import *
from tkinter import ttk
def change():
print("change functon called")
def main():
rootWindow = Tk()
rootWindow.geometry('400x400')
rootWindow.configure(bg="red")
global Label
label = ttk.Label( rootWindow, text="Hello World!" )
label.pack()
button1 = ttk.Button( rootWindow, text="Change Label",
command=change)
button1.pack()
rootWindow.mainloop()
main()
答案 0 :(得分:1)
因此,使用DNNClassifier
按钮VS tkinter
样式按钮时,配置按钮颜色会略有不同。
对于tkinter按钮,您可以使用background =“color”参数,如下所示:
ttk
对于button1 = Button( rootWindow, text="Change Label",
background = 'black', foreground = "white", command=change)
按钮,您将配置样式,然后使用ttk
参数,如下所示。
style = "style name"
有关style = ttk.Style()
style.configure("BW.TLabel", foreground="white", background="black")
buttonTTK = ttk.Button( rootWindow, text="TTK BUTTON",style = "BW.TLabel", command=change)
配置的更多信息,请访问here
ttk
结果:
答案 1 :(得分:1)
在Windows 10上,我遇到了同样的问题,并且找到了一种解决方案,尽管不是很令人满意。下面将创建带有白色前景类型的黑色按钮:
首先根据标准TButton样式定义自定义按钮样式
mystyle = ttk.Style()
mystyle.configure('mycustom.TButton',background='black',foreground='white')
然后使用新的自定义样式创建按钮
mybutton = ttk.Button(root,style='mycustom.Tbutton')
我说“不太满意”,因为这只有在我之前将整体主题设置为“默认”时才有效:
mystyle = ttk.Style()
mystyle.theme_use('default')
使用系统上可用的任何其他主题(winnative,clam,alt,classic,vista和xpnative)将仅将边框更改为黑色,而将背景保留为灰色。
答案 2 :(得分:0)
来自
Python, Tkinter, Change of label color
这将更改按钮的标签颜色:
button1.configure(foreground="red")
我认为可以对标签使用相同的方法。
答案 3 :(得分:0)
对于ttk按钮,色彩控制的主要问题要求使用ttk.Style()和theme_use。主题alt /经典/默认允许3D /彩色按钮控制。有关使用configure和style映射的代码示例,请参见Python: Changing ttk button color depending on current color?。