2011-11-18 12 views
5

मुझे यकीन नहीं है कि उन्हें क्या कहा जाता है, लेकिन मुझे विगेट्स को अलग करने के लिए एक आकार बदलने योग्य विभक्त रेखा चाहिए।wxpython में resizable divider लाइन?

मैं (क्षैतिज छोड़कर) कुछ इस तरह करना चाहते हैं: http://imm.io/bKgf

आप नहीं जानते कि मैं क्या करें, टिप्पणी के लिए धन्यवाद और मेरी अज्ञानता के लिए खेद है के बारे में बात कर रहा हूँ।

उत्तर

6

आप की जरूरत है, हो सकता है, एक splitterwindow की तरह:

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() 

enter image description here

1

मुझे यकीन नहीं है कि यह आपकी आवश्यकताओं को पूरा करेगा या नहीं, लेकिन आप WxPython's aui module पर एक नज़र डाल सकते हैं। उस पृष्ठ पर कुछ डेमो कोड है जो आपको प्रारंभ कर देगा, और wxPython demo में कुछ अच्छे उदाहरण हैं।

1

आप जो चाहते हैं वह wx.StaticLine है। बस उनमें से एक बनाएं और इसे अपने साइज़र में विस्तार शैली ध्वज के साथ जोड़ें। अधिक जानकारी के लिए http://www.wxpython.org/docs/api/wx.StaticLine-class.html देखें।

संपादित करें: ओह, मुझे लगता है कि स्प्लिटरविंडो के लिए जोक्विन का सुझाव स्पॉट हो सकता है। ध्यान दें कि वहाँ SplitterWindows की एक जोड़ी अन्य प्रकार, MultiSplitterWindow और FourWaySplitter