【问题标题】:Detect row selection in wxGrid检测 wxGrid 中的行选择
【发布时间】:2009-08-01 04:40:23
【问题描述】:

当用户选择 wxGrid 中的整行但我没有看到处理此问题的事件时,我希望收到警告。最好的方法是什么?

【问题讨论】:

    标签: events wxpython


    【解决方案1】:

    您可以使用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()
    

    由此您可以确定所选内容是否是您感兴趣的。

    【讨论】:

      【解决方案2】:

      其实,我想通了。有像 EVT_GRID_LABEL_LEFT_CLICK 这样的事件,然后我测试 event.GetCol() == -1,以确保点击是在整行而不是整列上。

      【讨论】:

      • 您还检查多行选择吗?如果是这样,我会很想知道你是怎么做到的。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多