在 wxPython Grid 中,为单元格选择创建事件处理程序会禁用移动 GridCursor
In wxPython Grid, creating event handler for Cell Selection disables moving the GridCursor
在我编写的程序中,用户需要能够 select 网格中的单元格并编辑其值。该程序还显示了当前 selected 值的十六进制值(因此 (0,0)
是 0x00
,(1,3)
是 0x19
,等等)我最初通过绑定到 wx.grd.EVT_GRID_SELECT_CELL
事件来更新此显示。但是,这样做后,GridCursor 将不再移动,它会保持在 (0,0)。因此,我向处理程序添加了一个 SetGridCursor
语句,让它在调用处理程序时移动光标。但是,这会产生一个无限循环,显然 SetGridCursor
在调用时会生成一个 EVT_GRID_SELECT_CELL
命令。
我的问题是,如何让代码在 selected 新单元格时执行,同时仍保持旧单元格 selection 功能?
在我的自定义处理程序末尾添加 event.Skip() 会将事件传递给默认处理程序。
在我编写的程序中,用户需要能够 select 网格中的单元格并编辑其值。该程序还显示了当前 selected 值的十六进制值(因此 (0,0)
是 0x00
,(1,3)
是 0x19
,等等)我最初通过绑定到 wx.grd.EVT_GRID_SELECT_CELL
事件来更新此显示。但是,这样做后,GridCursor 将不再移动,它会保持在 (0,0)。因此,我向处理程序添加了一个 SetGridCursor
语句,让它在调用处理程序时移动光标。但是,这会产生一个无限循环,显然 SetGridCursor
在调用时会生成一个 EVT_GRID_SELECT_CELL
命令。
我的问题是,如何让代码在 selected 新单元格时执行,同时仍保持旧单元格 selection 功能?
在我的自定义处理程序末尾添加 event.Skip() 会将事件传递给默认处理程序。