我们可以更改WxPython中复选框文本的背景色吗?

我们可以更改WxPython中复选框文本的背景色吗?,wxpython,Wxpython,我们可以更改WxPython中复选框文本的背景色吗? 我希望方形框的整个区域+附加的文本以特定的颜色显示 checkbox = wx.CheckBox(self.panel, -1, 'Label', (5, 5) 因此,目标是更改复选框和标签的背景颜色 setbackgroundcolor('blue')只会将复选框的正方形更改为蓝色,但我喜欢除此之外的所有内容(包括标签的背景)是的 import wx 然后定义你的类 class my_window(wx.Frame): 设定大小 w

我们可以更改WxPython中复选框文本的背景色吗? 我希望方形框的整个区域+附加的文本以特定的颜色显示

checkbox = wx.CheckBox(self.panel, -1, 'Label',  (5, 5)
因此,目标是更改复选框和标签的背景颜色

setbackgroundcolor('blue')只会将复选框的正方形更改为蓝色,但我喜欢除此之外的所有内容(包括标签的背景)

是的

import wx
然后定义你的类

class my_window(wx.Frame):
设定大小

wx.Frame.__init__(self,parent,id,'My Window', size=(300,200))
颜色呢

self.SetBackgroundColour(wx.BLUE)
对于标签,必须使用SetForegroundColor

  self.label2.SetForegroundColour("yellow")

我不相信复选框小部件支持这一点。即便如此,它也可能无法在所有平台上支持它。因为wxPython尽可能多地包装本机小部件,所以有时本机小部件不允许更改前景或背景或两种颜色。真正令人困惑的是,当一个操作系统版本允许它而另一个版本不允许它时

Rachel建议将整个面板设置为不同的颜色。如果堆叠面板,这可能会起作用。将一个面板放在框架上,然后将另一个面板放在主面板的顶部,并将复选框放在第二个面板的顶部。不过,您可能需要手动设置面板的大小


或者您可能需要自己编写一个自定义小部件。wx.lib和wxpythonwiki上都有示例。

self.checkbox.setbackgroundcolor(wx.color(255、255、128))


我是从wxFormBuilder生成的代码中得到的。我发现先尝试设计外观,然后再进一步修改以满足我的需要更容易。

复选框如何?cb=wx.CheckBox(…)。cb.setbackgroundcolor(wx.BLUE)只为复选框着色,但我也想要标签