Tkk:自定义样式不起作用
Tkk: custom style doesn't work
我正在尝试学习如何按照以下文档创建自定义 ttk 样式:http://infohost.nmt.edu/tcc/help/pubs/tkinter/web/ttk-style-layer.html
代码如下:
self.style = ttk.Style()
self.style.configure("ciao.TLabel", bg="red")
poplabel = ttk.Label(self.root, text="ciao", style="ciao.TLabel")
poplabel.place(x=0, y=530)
问题是标签样式仍然是默认样式,而不是 "ciao.TLabel"。
您遇到问题是因为 ttk.Label
的背景不是通过更改样式自定义的,而是通过更改 w = ttk.Label(parent, option=value, ...)
中的背景选项自定义的。
要更改现有颜色的背景颜色,您需要执行以下操作:
poplabel.configure(background='red')
或 poplabel[background]='red'
.
要在创建 ttk.label 时更改默认背景,请键入:
poplabel = ttk.Label(self.root, text="ciao", background="red")
更新: 不好意思,您可以如上所述更改背景,也可以使用样式。 L'ultimo 是正确的。 :)
问题是 "bg" 在 ttk 上不存在。只有 "background" 可以,事实上
self.style.configure("ciao.TLabel", background="red")
有效。
我正在尝试学习如何按照以下文档创建自定义 ttk 样式:http://infohost.nmt.edu/tcc/help/pubs/tkinter/web/ttk-style-layer.html
代码如下:
self.style = ttk.Style()
self.style.configure("ciao.TLabel", bg="red")
poplabel = ttk.Label(self.root, text="ciao", style="ciao.TLabel")
poplabel.place(x=0, y=530)
问题是标签样式仍然是默认样式,而不是 "ciao.TLabel"。
您遇到问题是因为 ttk.Label
的背景不是通过更改样式自定义的,而是通过更改 w = ttk.Label(parent, option=value, ...)
中的背景选项自定义的。
要更改现有颜色的背景颜色,您需要执行以下操作:
poplabel.configure(background='red')
或 poplabel[background]='red'
.
要在创建 ttk.label 时更改默认背景,请键入:
poplabel = ttk.Label(self.root, text="ciao", background="red")
更新: 不好意思,您可以如上所述更改背景,也可以使用样式。 L'ultimo 是正确的。 :)
问题是 "bg" 在 ttk 上不存在。只有 "background" 可以,事实上
self.style.configure("ciao.TLabel", background="red")
有效。