1
問題:我有一個wx.ListCtrl在其中我想包括一個顏色選擇器。所以,對於一個列表,如本圖所示: ColourPickerCtrl ListCtrl
我想要得到的是這樣的:
在其中黑色方形元素是wx.ColorPickerCtrl。我查看了ListCtrl方法並找不到任何東西。我也看了UltimateListCtrl,但沒有找到任何方法。
這是我到目前爲止的代碼:
import wx
import wx.xrc
class MyFrame1 (wx.Frame):
def __init__(self, parent):
wx.Frame.__init__ (self, parent, id = wx.ID_ANY, title = wx.EmptyString, pos = wx.DefaultPosition, size = wx.Size(500,300), style = wx.DEFAULT_FRAME_STYLE|wx.TAB_TRAVERSAL)
self.SetSizeHintsSz(wx.DefaultSize, wx.DefaultSize)
bSizer2 = wx.BoxSizer(wx.VERTICAL)
self.m_panel2 = wx.Panel(self, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.TAB_TRAVERSAL)
bSizer3 = wx.BoxSizer(wx.VERTICAL)
self.m_listCtrl9 = wx.ListCtrl(self.m_panel2, style=wx.LC_REPORT| wx.LC_HRULES | wx.LC_SINGLE_SEL | wx.BORDER_SUNKEN)
self.m_listCtrl9.InsertColumn(0, 'Something')
self.m_listCtrl9.InsertColumn(1, 'Description')
self.m_listCtrl9.InsertColumn(2, 'Color ', width=125)
for i in range(0,20):
self.m_listCtrl9.InsertStringItem(0, "212343" + str(i))
bSizer3.Add(self.m_listCtrl9, 0, wx.ALL|wx.EXPAND, 5)
self.m_staticline4 = wx.StaticLine(self.m_panel2, wx.ID_ANY, wx.DefaultPosition, wx.DefaultSize, wx.LI_HORIZONTAL)
bSizer3.Add(self.m_staticline4, 0, wx.EXPAND |wx.ALL, 5)
self.m_panel2.SetSizer(bSizer3)
self.m_panel2.Layout()
bSizer3.Fit(self.m_panel2)
bSizer2.Add(self.m_panel2, 1, wx.EXPAND |wx.ALL, 5)
self.SetSizer(bSizer2)
self.Layout()
self.Centre(wx.BOTH)
def main():
app = wx.App(False)
f = MyFrame1(None)
f.Show()
app.MainLoop()
if __name__ == '__main__':
main()
我想也許有一種明顯的方式,因爲它似乎簡單的事,但我不知道該怎麼做,有什麼建議?
在此先感謝。