我正在编写一个程序,左边有一个TreeCtrl,右边有一个RichTextCtrl。 以下是拆分器,面板和其他元素的代码。
问题是在windows中,treectrl和textctrl的底部是隐藏的。状态栏覆盖分割器的底部。但即使删除了状态栏,我也看不到treectrl的底部(隐藏最多6行)。
self.panel=wx.Panel(self,wx.ID_ANY)
self.splitter=wx.SplitterWindow(
self.panel,-1,size=wx.DisplaySize(),style=wx.SP_LIVE_UPDATE)
self.splitter.SetMinimumPaneSize(5)
self.datatree=wx.TreeCtrl(self.splitter,1,style=wx.TR_HIDE_ROOT|wx.TR_ROW_LINES)
self.display=wx.richtext.RichTextCtrl(
self.splitter,1,style=wx.VSCROLL|wx.HSCROLL|wx.WANTS_CHARS)
self.display.SetFont(self.displayfont)
self.handler=wx.richtext.RichTextXMLHandler()
self.splitter.SplitVertically(self.datatree,self.display)
self.logger=self.CreateStatusBar()
答案 0 :(得分:0)
我认为这里的问题可能是你明确告诉SplitterWindow占用整个显示尺寸。尝试省略构造函数的size参数,或者将其调整一些,以查看它是否有效。
如果省略size参数没有帮助,我建议使用包含Tree和Rich Text Control的Sizer创建Panel,然后在Splitter Window中垂直拆分这些Panel。