使用与指定的背景颜色不同的wx控件

时间:2012-02-29 13:49:06

标签: python wxpython

如果我跑

panel.SetBackgroundColour(panel.GetBackgroundColour())

在wxPython面板上,颜色会发生变化! 这里发生了什么事?我如何获得真正的颜色?

1 个答案:

答案 0 :(得分:4)

如果您当前的GTK主题使用纹理作为背景,那么它可能会定义背景颜色的近似匹配,这是您从GetBackgroundColour获得的颜色。通过将其传递给制定者,您告诉窗口使用该颜色而不是纹理。

另一种可能性是主题是否会在某些上下文中更改默认颜色,例如,如果面板是笔记本中的页面,Windows将执行的操作。通过将颜色设置为其他颜色(即使它是默认颜色),那么您将覆盖主题,它将不会对窗口颜色执行任何操作。