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()
我想也许有一种明显的方式,因为它似乎简单的事,但我不知道该怎么做,有什么建议?
在此先感谢。