现在,我正在设置这样的背景颜色,
dc.DrawRectangle(0,0,width,height)
你知道设置背景颜色的更好方法吗?
现在,我正在设置这样的背景颜色,
dc.DrawRectangle(0,0,width,height)
你知道设置背景颜色的更好方法吗?
如果您已经在 awx.DC
上绘制以绘制窗口的其余内容,那么最好的方法是设置背景画笔,然后清除 DC。像这样的东西:
def OnPaint(self, event):
dc= wx.PaintDC(self)
dc.SetBackground(wx.Brush(someColour))
dc.Clear()
# other drawing stuff...
如果您使用窗口的SetBackgroundColour
方法设置颜色,那么您可以使用它而不是一些固定的颜色值,如下所示:
def OnPaint(self, event):
dc= wx.PaintDC(self)
dc.SetBackground(wx.Brush(self.GetBackgroundColour()))
dc.Clear()
# other drawing stuff...
适用于大多数窗口(包括按钮和其他小部件)的正常方法是调用 wxWindow::SetBackgroundColour()
http://docs.wxwidgets.org/2.8/wx_wxwindow.html#wxwindowsetbackgroundcolour
巧妙的是,如果你在最顶层的父级上调用它,所有的子级将自动继承相同的背景颜色。请参阅链接以了解其工作原理。