2017-10-11 123 views
0

我一直在使用wxPython很長一段時間了。我對大多數對象有很好的處理能力,並且我已經能夠創建面板佈局,而且大部分都沒有問題。wx.ComboBox隱藏在其他面板後面

我在這裏要做的是顯示兩個列表(組合框)。一個代表用戶可以選擇並添加到右側列表中的可能選項的完整列表(左側)。該功能可以運行得很好,但本身在視覺上成爲由包含一個wxNotebook對象的相同標籤中的其它面板遮蔽的對象(見所附圖像上紅色矩形。)

Combo boxes become obscured by panel containing button

頂部面板是一個複合三個面板。第一個包含一個組合框和一些間隔符。第二個(中)包含允許用戶添加/刪除項目的按鈕。第三個,就像第一個,是一個組合框和一些間隔符。中間面板可以很好地縮放,但我無法調整組合框的高度。

我希望組合框是wx.CB_SIMPLE佈局,以便顯示所有選項。理想情況下,如果選項的數量超過面板高度,我會看到一個垂直滾動條。

在不丟失其他面板背後的組合框的情況下完成此操作的最簡單方法是什麼?

回答

0

我沒有看到需要將3個面板嵌套在筆記本頁面內。相反,我會創建一個嵌套sizer的面板。您可以創建一個水平BoxSizer來容納所有小部件。然後在裏面,你可以添加左邊的組合框到sizer中。接下來創建一個垂直尺寸,您可以放入按鈕(添加,刪除,清除)。

將垂直尺寸大小添加到水平尺寸大小。現在創建你的合適的組合框,並將其添加到水平尺寸。現在你有相同的設置或接近它,你將不會有面板相互交叉。