[英]wxpython notebook inside boxsizer
此代碼有什么問題? 我試圖將筆記本放置在Boxsizer控制的面板上。 我是wxpython的新手,無法弄清楚我在做什么錯。 當我運行它時,它只會在角落變成一團糟:(
import wx
class TestNoteBook(wx.Frame):
def __init__(self, parent, id, title):
wx.Frame.__init__(self, parent, id, title, size=(600, 500))
panel = wx.Panel(self)
hsizer = wx.BoxSizer(wx.HORIZONTAL)
leftpanel = wx.Panel(panel)
notebook = wx.Notebook(leftpanel)
posterpage = wx.Panel(notebook)
listpage = wx.Panel(notebook)
notebook.AddPage(posterpage, 'posters')
notebook.AddPage(listpage, 'list')
hsizer.Add(leftpanel, 1, wx.EXPAND)
rightpanel = wx.Panel(panel)
hsizer.Add(rightpanel, 1, wx.EXPAND)
panel.SetSizer(hsizer)
app = wx.App()
frame = TestNoteBook(None, -1, 'notebook')
frame.Show()
app.MainLoop()
設置左面板的sizer。 請參閱下面的代碼(尤其是### Added code (
之間的### Added code (
... ### Added code)
)。
import wx
class TestNoteBook(wx.Frame):
def __init__(self, parent, id, title):
wx.Frame.__init__(self, parent, id, title, size=(600, 500))
panel = wx.Panel(self)
hsizer = wx.BoxSizer(wx.HORIZONTAL)
leftpanel = wx.Panel(panel)
notebook = wx.Notebook(leftpanel)
posterpage = wx.Panel(notebook)
listpage = wx.Panel(notebook)
notebook.AddPage(posterpage, 'posters')
notebook.AddPage(listpage, 'list')
hsizer.Add(leftpanel, 1, wx.EXPAND)
rightpanel = wx.Panel(panel)
hsizer.Add(rightpanel, 1, wx.EXPAND)
##### Added code (
leftpanel_sizer = wx.BoxSizer(wx.HORIZONTAL)
leftpanel_sizer.Add(notebook, 1, wx.EXPAND)
leftpanel.SetSizer(leftpanel_sizer)
rightpanel.SetBackgroundColour('blue') # not needed, to distinguish rightpanel from leftpanel
##### Added code )
panel.SetSizer(hsizer)
app = wx.App()
frame = TestNoteBook(None, -1, 'notebook')
frame.Show()
app.MainLoop()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.