sizer - WxPython: FoldPanelBar not really folding -
मैंने FoldPanelBar का उपयोग करके निम्नलिखित कोड लिखा है:
आयात करें wx import wx.lib .agw.foldpanelbar रूप FPB वर्ग फ्रेम (wx.Frame): def __init __ (स्वयं, * args, ** kwargs): wx.Frame .__ init __ (स्वयं, * args, ** kwargs) self.text_ctrl_1 = wx.TextCtrl ( आत्म, -1, शैली = wx.TE_MULTILINE) self.fpb = fpb.FoldPanelBar (स्वयं, -1, शैली = fpb.FPB_HORIZONTAL) self.fold_panel = self.fpb.AddFoldPanel ( "बात") self.thing = wx। TextCtrl (self.fold_panel, -1, आकार = (400, -1), शैली = wx.TE_MULTILINE) self.fpb.AddFoldPanelWindow (self.fold_panel, self.thing) self.sizer_1 = wx.BoxSizer (wx.HORIZONTAL) Self.sizer_1.Add (self.text_ctrl_1,1, wx.EXPAND) self.sizer_1.ऐड (स्वयं। एफपीबी, 1, wx.EXPAND) self.SetSizer (self.sizer_1) self.Show () अगर __name __ == " __मैन__ ": ऐप = wx.PySimpleApp () फ्रेम (कोई नहीं, -1) ऐप। मुख्य लूप () यह वही है जो इसे तह से पहले दिखता है:
< / P>
सही पाठ बॉक्स गुना पैनल में है, इसलिए जब मैं तीर पर क्लिक करता हूं, तो यह गायब हो जाता है हालांकि, यह इस तरह दिखता है:
मुझे उम्मीद है कि बाएं पाठ बॉक्स पूरे फ्रेम को भरने के लिए आकार में बढ़ने के लिए।
मैं क्या कर रहा हूँ गलत? < / P>
यह वह है जो आप चाहते हैं कि मुझे लगता है। मैंने पैनेंनलबार में कई पैनलों का परीक्षण नहीं किया है, आपको इसे बहुत अधिक होने से रोकने के लिए स्पष्ट रूप से पैनैनलबार के आकार को सीमित करना पड़ सकता है।
आयात करें wx आयात wx.lib.agw.foldpanelbar डीईएफ़ __init __ (स्वयं, * args, ** kwargs): FPB वर्ग फ्रेम (wx.Frame) के रूप में wx.Frame .__ init __ (स्वयं, * args, ** kwargs) self.text_ctrl_1 = wx.TextCtrl (स्वयं, -1 , आकार = (400, 100), शैली = wx.TE_MULTILINE) self.fpb = fpb.FoldPanelBar (स्वयं, -1, शैली = fpb.FPB_HORIZONTAL | fpb.FPB_DEFAULT_STYLE) self.fold_panel = self.fpb.AddFoldPanel ( "बात ") self.thing = wx.TextCtrl (self.fold_panel, -1, आकार = (400, -1), शैली = wx.TE_MULTILINE) self.fpb.AddFoldPanelWindow (self.fold_panel, self.thing) self.fpb। बाइंड (fpb.EVT_CAPTIONBAR, self.onCaptionBar) self.sizer_1 = wx.boxSizer (wx .HORIZONTAL) self.sizer_1.ऐड (स्वयं। टेक्सटाइल_1, 1, wx.EXPAND) self.sizer_1 जोड़ें (self.fpb, 0, wx.EXPAND) self.SetSizer (self.sizer_1) self.ResizeFPB () def पर कैप्शनबार (स्वयं, ईवेंट): event.Skip () wx.CallAfter (self.ResizeFPB) def ResizeFPB (स्वयं ): SizeNeeded = self.fpb.GetPanelsLength (0, 0) [2] self.fpb.SetMinSize ((SizeNeeded, self.fpb.GetSize () [1])) self.Fit () ऐप = wx.App (0 ) एफ = फ्रेम (कोई नहीं) f.Show () app.MainLoop ()
Comments
Post a Comment