2007年06月12日 星期二 14:31
各位好,我做了一个wxpython的程序,使用了这样的代码来添加toolbar和
richtextctrl:
box = wx.BoxSizer(wx.VERTICAL)
self.toolbar = self.CreateToolBar(style=wx.TB_FLAT|wx.TB_HORZ_TEXT)
self.toolbar.Realize()
self.toolbar.Hide()
box.Add(self.toolbar,0,wx.EXPAND)
self.rtc = rt.RichTextCtrl(self,style=wx.VSCROLL|wx.HSCROLL|wx.NO_BORDER|wx.TE_MULTILINE|wx.TE_WORDWRAP)
box.Add(self.rtc,1,wx.EXPAND)
box.Layout()
程序运行以后发现richtextctrl缩成一个大约2x2大小的方框,并不能填满frame中
除了menubar和toolbar的剩余区域,请指教下,谢谢!
--
2007年06月12日 星期二 14:40
SetSizer º¯ÊýÓÃÁËÂð£¿
self.SetSizer(sizer)
self.SetAutoLayout(True)
wang_zheng_yong
2007-06-12
·¢¼þÈË£º pyman577
·¢ËÍʱ¼ä£º 2007-06-12 14:31:26
ÊÕ¼þÈË£º python-chinese在lists.python.cn
³ËÍ£º
Ö÷Ì⣺ [python-chinese] Çë½Ìwxpython frameµÄ²¼¾ÖÎÊÌâ
¸÷λºÃ£¬ÎÒ×öÁËÒ»¸öwxpythonµÄ³ÌÐò£¬Ê¹ÓÃÁËÕâÑùµÄ´úÂëÀ´Ìí¼ÓtoolbarºÍ
richtextctrl£º
box = wx.BoxSizer(wx.VERTICAL)
self.toolbar = self.CreateToolBar(style=wx.TB_FLAT|wx.TB_HORZ_TEXT)
self.toolbar.Realize()
self.toolbar.Hide()
box.Add(self.toolbar,0,wx.EXPAND)
self.rtc = rt.RichTextCtrl(self,style=wx.VSCROLL|wx.HSCROLL|wx.NO_BORDER|wx.TE_MULTILINE|wx.TE_WORDWRAP)
box.Add(self.rtc,1,wx.EXPAND)
box.Layout()
³ÌÐòÔËÐÐÒÔºó·¢ÏÖrichtextctrlËõ³ÉÒ»¸ö´óÔ¼2x2´óСµÄ·½¿ò£¬²¢²»ÄÜÌîÂúframeÖÐ
³ýÁËmenubarºÍtoolbarµÄÊ£ÓàÇøÓò£¬ÇëÖ¸½ÌÏ£¬Ð»Ð»£¡
--
_______________________________________________
python-chinese
Post: send python-chinese在lists.python.cn
Subscribe: send subscribe to python-chinese-request在lists.python.cn
Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn
Detail Info: http://python.cn/mailman/listinfo/python-chinese
-------------- 下一部分 --------------
Ò»¸öHTML¸½¼þ±»ÒƳý...
URL: http://python.cn/pipermail/python-chinese/attachments/20070612/a48eda83/attachment.htm
2007年06月12日 星期二 15:11
谢谢,我的代码改成这样
def initCtrl(self):
box = wx.BoxSizer(wx.VERTICAL)
self.toolbar = self.CreateToolBar(style=wx.TB_FLAT|wx.TB_HORZ_TEXT)
self.toolbar.Realize()
self.toolbar.Hide()
box.Add(self.toolbar,0,wx.EXPAND)
self.rtc = rt.RichTextCtrl(self,style=wx.VSCROLL|wx.HSCROLL|wx.NO_BORDER|wx.TE_MULTILINE|wx.TE_WORDWRAP)
box.Add(self.rtc,1,wx.EXPAND)
self.rtc.Layout()
self.SetSizer(box)
self.SetAutoLayout(True)
#FIXME: UI layout need to be fixed
def onResize(self, evt):
if evt.GetSize().height>360:
self.SetMenuBar(self.menu)
self.toolbar.Show()
else:
self.SetMenuBar(None)
self.toolbar.Hide()
self.Layout()
self.rtc.Refresh()
self.Refresh()
现在发现richtextctrl已经可以扩大到整个frame了,但是如果我将frame大小变大
,在显示出来menubar和toolbar之后,richtextctrl和toolbar之间会有一个高度
跟toolbar差不多的一个空隙,richtextctrl并没有紧跟着toolbar的底部布局。
--
2007年06月12日 星期二 17:39
toolbarÊǺʹ°Ì幨ÁªµÄ°É£¬²»ÐèÒªÌí¼Óµ½sizerÀï°É£¬ÕâÑù×öµÄ»°ÊDz»ÊÇÏ൱ÓÚ´°ÌåÀïÃæÓÐÁ½¸ötoolbarÁË Ò»¸öÔÚsizerÀïÒ»¸öÔÚ´°Ìå²Ëµ¥ÇøÓòµÄÏ·½ ÔÚ07-6-12£¬pyman577 <pyman577在sina.com> дµÀ£º > > лл£¬ÎҵĴúÂë¸Ä³ÉÕâÑù > > def initCtrl(self): > box = wx.BoxSizer(wx.VERTICAL) > self.toolbar = self.CreateToolBar(style=wx.TB_FLAT|wx.TB_HORZ_TEXT) > self.toolbar.Realize() > self.toolbar.Hide() > box.Add(self.toolbar,0,wx.EXPAND) > self.rtc = rt.RichTextCtrl(self,style= > wx.VSCROLL|wx.HSCROLL|wx.NO_BORDER|wx.TE_MULTILINE|wx.TE_WORDWRAP) > box.Add(self.rtc,1,wx.EXPAND) > self.rtc.Layout() > self.SetSizer(box) > self.SetAutoLayout(True) > > #FIXME: UI layout need to be fixed > > > def onResize(self, evt): > if evt.GetSize().height>360: > self.SetMenuBar(self.menu) > self.toolbar.Show() > else: > self.SetMenuBar(None) > self.toolbar.Hide() > self.Layout() > self.rtc.Refresh() > self.Refresh() > > ÏÖÔÚ·¢ÏÖrichtextctrlÒѾ¿ÉÒÔÀ©´óµ½Õû¸öframeÁË£¬µ«ÊÇÈç¹ûÎÒ½«frame´óС±ä´ó > £¬ÔÚÏÔʾ³öÀ´menubarºÍtoolbarÖ®ºó£¬richtextctrlºÍtoolbarÖ®¼ä»áÓÐÒ»¸ö¸ß¶È > ¸útoolbar²î²»¶àµÄÒ»¸ö¿Õ϶£¬richtextctrl²¢Ã»Óнô¸ú×ÅtoolbarµÄµ×²¿²¼¾Ö¡£ > -- > > > _______________________________________________ > python-chinese > Post: send python-chinese在lists.python.cn > Subscribe: send subscribe to python-chinese-request在lists.python.cn > Unsubscribe: send unsubscribe to python-chinese-request在lists.python.cn > Detail Info: http://python.cn/mailman/listinfo/python-chinese -------------- 下一部分 -------------- Ò»¸öHTML¸½¼þ±»ÒƳý... URL: http://python.cn/pipermail/python-chinese/attachments/20070612/7e9ef2b1/attachment.htm
2007年06月12日 星期二 17:58
晕死,果然如此,不将toolbar添加到boxsizer里面就ok了,,,实在是感谢啊, 刚从.net转过来,这些还很不习惯 --
Zeuux © 2025
京ICP备05028076号