0

我是 wxpython 的新手,我正在使用 wxformbuilder 来设计我的大部分表单,但我无法确定如何为我的框架中的活动标题设置背景颜色?我是在代码中执行此操作,还是在 wxformbuilder 中有可以设置的属性?

提前致谢,

4

1 回答 1

0

您可以从 wxformbuilder RAD 环境和 wxpython 代码中为活动框架设置背景颜色。

通过 wxformbuilder 设置背景颜色

在“对象树”上添加 Frame >> 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()
于 2016-04-03T17:22:00.280 回答