我是wxpython的新手,我正在使用wxformbuilder来设计我的大多数表单,但是我无法确定如何为我的框架中的活动标题设置背景颜色?我是在代码中执行此操作还是在wxformbuilder中有可以设置的属性?
提前感谢,
答案 0 :(得分:0)
您可以从wxformbuilder RAD环境以及wxpython代码中为活动帧设置背景颜色。
通过wxformbuilder设置背景颜色
添加你的框架>> Sizer>> “对象树”上的面板,并将“对象属性”窗格中的背景(bg)颜色设置为右侧。有关详细信息,请参见下图。
通过wxpython代码设置背景颜色
使用面板的“SetBackgroundColour”和“wx.Colour”方法设置其颜色属性。
self.m_panel1 = wx.Panel( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TAB_TRAVERSAL )
self.m_panel1.SetBackgroundColour( wx.Colour( 255, 128, 0 ) )
请参阅以下完整代码: -
import wx
class MyFrame1 ( wx.Frame ):
def __init__( self, parent ):
wx.Frame.__init__ ( self, parent, id = wx.ID_ANY, title = wx.EmptyString, pos = wx.DefaultPosition, size = wx.Size( 500,300 ), style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL )
self.SetSizeHintsSz( wx.DefaultSize, wx.DefaultSize )
bSizer1 = wx.BoxSizer( wx.VERTICAL )
self.m_panel1 = wx.Panel( self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TAB_TRAVERSAL )
self.m_panel1.SetBackgroundColour( wx.Colour( 255, 128, 0 ) )
bSizer1.Add( self.m_panel1, 1, wx.EXPAND |wx.ALL, 5 )
self.SetSizer( bSizer1 )
self.Layout()
self.Centre( wx.BOTH )
def __del__( self ):
pass
if __name__ == '__main__':
app = wx.App()
frame = MyFrame1(None).Show()
app.MainLoop()