2014-10-17 49 views
0

我想添加一個wxListBox到我的框架,但我有一些困難。無法添加wxListBox框架

這是我的示例代碼

wx.Frame.__init__(self,parent,title=title,size=(750,690), style=wx.MINIMIZE_BOX|wx.SYSTEM_MENU| 
       wx.CAPTION|wx.CLOSE_BOX|wx.CLIP_CHILDREN) 

    splitter = wx.SplitterWindow(self) 
    panel1 = panel1(splitter) 
    panel2 = wx.Panel(splitter,style=wx.SUNKEN_BORDER) 
    splitter.SplitHorizontally(panel1,panel2,470) 
    listBox = wx.ListBox(splitter, -1, (20, 20), (80, 120), 0, wx.LB_SINGLE) 

我收到此錯誤,
控制 .ListBox_swiginit(個體經營,控制 .new_ListBox(* ARGS,** kwargs)) 類型錯誤:順序期望的字符串。

回答

0

你行:

listBox = wx.ListBox(splitter, -1, (20, 20), (80, 120), 0, wx.LB_SINGLE) 

應該是這樣的:

listBox = wx.ListBox(panel1, -1, (20, 20), (80, 120), [a list of choices], wx.LB_SINGLE) 

相反,它養育到分離器的使用你的面板之一,或者如果你想讓它分離器之外,那麼用「自我'這是你的框架。

您正在對代碼大小和位置進行硬編碼,而我建議查看使用sizer。見例如http://wiki.wxpython.org/UsingSizers或做谷歌搜索。

+0

如何添加列表框到框架? – user3445748 2014-10-17 10:52:50

+0

@ user3445748,oops,請參閱我對編輯的回答 – Werner 2014-10-17 11:00:34

+0

父母沒有解釋錯誤,如果這是您想要的,可以直接創建列表框作爲分隔符的子項 - 除了其中一個面板會變得沒有必要。這個錯誤完全是由於爲字符串使用了'0'而不是'[...]'。 – 2014-10-17 12:10:41