【发布时间】:2009-08-01 04:40:23
【问题描述】:
当用户选择 wxGrid 中的整行但我没有看到处理此问题的事件时,我希望收到警告。最好的方法是什么?
【问题讨论】:
当用户选择 wxGrid 中的整行但我没有看到处理此问题的事件时,我希望收到警告。最好的方法是什么?
【问题讨论】:
您可以使用EVT_GRID_RANGE_SELECT 执行此操作,然后在调用处理程序时检查范围是否为单行。
例如,在 GridSimple.py wxPython 演示中,将行放入SimpleGrid.__init__
self.Bind(gridlib.EVT_GRID_RANGE_SELECT, self.OnSelectRange)
然后添加它以查看选择了哪些单元格。
def OnSelectRange(self, evt):
print "on select range", evt.GetTopLeftCoords(), evt.GetBottomRightCoords()
由此您可以确定所选内容是否是您感兴趣的。
【讨论】:
其实,我想通了。有像 EVT_GRID_LABEL_LEFT_CLICK 这样的事件,然后我测试 event.GetCol() == -1,以确保点击是在整行而不是整列上。
【讨论】: