答案 0 :(得分:6)
你可能需要一个分离窗口:
import wx
class MyFrame(wx.Frame):
def __init__(self, parent):
wx.Frame.__init__(self, parent)
self.splitter = wx.SplitterWindow(self)
pan1 = wx.Window(self.splitter, style=wx.BORDER_SUNKEN)
pan1.SetBackgroundColour("yellow")
wx.StaticText(pan1, -1, "My Left Panel")
pan2 = wx.Window(self.splitter, style=wx.BORDER_SUNKEN)
pan2.SetBackgroundColour("orange")
wx.StaticText(pan2, -1, "my Right Panel")
self.splitter.SplitVertically(pan1, pan2, -100)
if __name__ == '__main__':
app = wx.PySimpleApp()
frame = MyFrame(None)
frame.Show()
app.MainLoop()
答案 1 :(得分:1)
我不确定这是否完全符合您的需求,但您可能会看看wxPython的aui module。该页面上有一些演示代码可以帮助您入门,wxPython demo有一些很好的例子可以试用。
答案 2 :(得分:1)
你想要的是wx.StaticLine。只需创建其中一个并使用EXPAND样式标志将其添加到您的sizer中。有关详细信息,请参阅http://www.wxpython.org/docs/api/wx.StaticLine-class.html。
编辑:哦,我认为Joaquin对SplitterWindow的建议可能会被发现。请注意,还有其他几种类型的SplitterWindows,例如MultiSplitterWindow和FourWaySplitter