【问题标题】:Tkk: custom style doesn't workTkk:自定义样式不起作用
【发布时间】:2017-02-16 17:43:07
【问题描述】:

我正在尝试按照以下文档学习如何创建自定义 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”。

【问题讨论】:

  • 您使用的是什么操作系统? This 可能有助于回答您的问题。

标签: python tkinter ttk


【解决方案1】:

问题是ttk上不存在“bg”。事实上,只有“背景”才可以

self.style.configure("ciao.TLabel", background="red")

有效。

【讨论】:

  • 恭喜您找到问题的答案。 ;)
【解决方案2】:

您遇到问题是因为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 是正确的。 :)

【讨论】:

    猜你喜欢
    • 2015-08-17
    • 1970-01-01
    • 2015-07-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-16
    • 2014-08-01
    相关资源
    最近更新 更多