wxGrid 将单个单元格绑定到事件

发布于 2024-11-10 11:01:17 字数 395 浏览 4 评论 0原文

我正在尝试执行以下操作:

cell = self.grid.SetCellValue(0, 0, "test")  # Where grid is the instance of wx.grid
                                             # and self is a wx.panel instance
self.grid.Bind(EVT_GRID_CELL_LEFT_CLICK, self.on_left_click, cell)

这是我尝试将单击单元格 (0, 0) 的事件绑定到 self.on_left_click() 。

但如果单击左键,此方法会将所有单元格绑定到此事件。 有没有办法只结合细胞 (0, 0) 而不结合其他细胞?

I am trying to do the following:

cell = self.grid.SetCellValue(0, 0, "test")  # Where grid is the instance of wx.grid
                                             # and self is a wx.panel instance
self.grid.Bind(EVT_GRID_CELL_LEFT_CLICK, self.on_left_click, cell)

this is my attempt at binding the event of clicking cell (0, 0) to self.on_left_click().

But this method binds all cells to this event in the event of a left click.
Is there a way to bind ONLY cell (0, 0) and no other cells?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

层林尽染 2024-11-17 11:01:17

一个更简单的解决方案可能是在事件处理程序中检查事件的行和列,并仅当事件来自单元格 (0,0) 时才执行操作:

def on_left_click(self, evt):
    if evt.GetRow() == 0 and evt.GetCol() == 0:
        #do stuff
    evt.Skip()

An easier solution might be to check the event's row and column in your event handler, and perform your actions only if the event came from cell (0,0):

def on_left_click(self, evt):
    if evt.GetRow() == 0 and evt.GetCol() == 0:
        #do stuff
    evt.Skip()
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文