多面板的控制尺寸

时间:2019-02-25 09:58:45

标签: python-3.x wxpython

我是wxpython的初学者,我想用一个窗口,菜单文件和版本以及我尝试过的两个面板来创建我的第一个图形界面,但是面板尺寸太小了,它们太小了 代码:

 import wx


    class MainFrame(wx.Frame):
        """Create MainFrame class."""
        def __init__(self, *args, **kwargs):
            super(MainFrame, self).__init__(None, *args, **kwargs)
            self.Title = 'Basic wxPython module'
            self.SetMenuBar(MenuBar(self))
            self.ToolBar = MainToolbar(self)
            self.status_bar = StatusBar(self).status_bar
            self.Bind(wx.EVT_CLOSE, self.on_quit_click)
            panel = MainPanel(self)
            sizer = wx.BoxSizer()
            sizer.Add(panel)
            self.SetSizerAndFit(sizer)
            self.Centre()
            self.Show()

        def on_quit_click(self, event):
            """Handle close event."""
            del event
            wx.CallAfter(self.Destroy)


    class MainPanel(wx.Panel):
        """Panel class to contain frame widgets."""
        def __init__(self, parent):
            wx.Frame.__init__(self, parent)
            self.splitter = wx.SplitterWindow(self)
    # 1er panel 
            pan1 = wx.Window(self.splitter, style=wx.BORDER_SUNKEN)
            pan1.SetBackgroundColour("white")
            wx.StaticText(pan1, 1, "panel 1 ")
    #2em panel
            pan2 = wx.Window(self.splitter, style=wx.BORDER_SUNKEN)
            pan2.SetBackgroundColour("black")
            wx.StaticText(pan2, 1, "panel 2 ")

            self.splitter.SplitVertically(pan1, pan2, 50)


    class MenuBar(wx.MenuBar):
        """Create the menu bar."""
        def __init__(self, parent, *args, **kwargs):
            super(MenuBar, self).__init__(*args, **kwargs)
            # File menu
            file_menu = wx.Menu()
            self.Append(file_menu, '&File')

            quit_menu_item = wx.MenuItem(file_menu, wx.ID_EXIT)
            parent.Bind(wx.EVT_MENU, parent.on_quit_click, id=wx.ID_EXIT)

            file_menu.Append(quit_menu_item)


    class MainToolbar(wx.ToolBar):
        """Create tool bar."""
        def __init__(self, parent, *args, **kwargs):
            super(MainToolbar, self).__init__(parent, *args, **kwargs)



    class StatusBar(object):
        def __init__(self, parent):
            """Create status bar."""
            self.status_bar = parent.CreateStatusBar()


    if __name__ == '__main__':
        """Run the application."""
        screen_app = wx.App()
        main_frame = MainFrame()
        screen_app.MainLoop()

我得到这样的结果:

enter image description here

我需要做这样的结果:

enter image description here

我如何控制面板的大小并像5个面板那样做

谢谢你

0 个答案:

没有答案