- 论坛徽章:
- 0
|
弄个程序带listctrl控件,奇怪的是 bind select和deselect事件后有奇怪的现象出现,点击list的一个条目,会产生2次select事件,选另外一个条目会产生2次deselect事件。盼大侠能指点一下
class mainFram(wx.Frame):
def _init_coll_testlist_Columns(self, parent):
# generated method, don't edit
parent.InsertColumn(col=0, format=wx.LIST_FORMAT_LEFT, heading=u'name',
width=-1)
parent.InsertColumn(col=1, format=wx.LIST_FORMAT_LEFT, heading=u'num',
width=-1)
def _init_ctrls(self, prnt):
self.testlist = wx.ListCtrl(id=wxID_MAINFRAMTESTLIST, name=u'testlist',
parent=self.Notebook, pos=wx.Point(736, 552), size=wx.Size(232,
140), style=wx.LC_REPORT)
self._init_coll_testlist_Columns(self.testlist)
self.testlist.Bind(wx.EVT_LIST_ITEM_SELECTED,
self.OnListCtrl1ListItemSelected, id=wxID_MAINFRAMTESTLIST)
self.testlist.Bind(wx.EVT_LIST_ITEM_DESELECTED,
self.OnListCtrl1ListItemDeselected, id=wxID_MAINFRAMTESTLIST)
def OnListCtrl1ListItemSelected(self, event):
self.LOG.WriteText("select\n")
event.Skip()
def OnListCtrl1ListItemDeselected(self, event):
self.LOG.WriteText("deselect\n")
event.Skip()
def OnUnuseSelfSearch_ButtonButton(self, event):
items = sn.items()
for key, data in items:
index = self.testlist.InsertStringItem(sys.maxint, str(key))
self.testlist.SetStringItem(index, 1, data)
event.Skip()
如 guijia8427 所言把event.Skip() 换成return() 就好了。
[ 本帖最后由 fandatou 于 2008-3-1 21:24 编辑 ] |
|