0

我正在尝试在 Windows 10 上的 wxWidgets 2.9.4 中将上下文菜单添加到网格控件中,虽然我可以让上下文菜单键正常工作,但右键单击却没有。现在我在标题中有以下内容

void handle_contextMenu(wxContextMenuEvent& event);
void handle_rightButton(wxMouseEvent& event);

并在构造函数中

Bind(wxEVT_CONTEXT_MENU, &DataGrid::handle_contextMenu, this);
Bind(wxEVT_RIGHT_UP, &DataGrid::handle_rightButton, this);

两者都不适用于鼠标右键。

4

1 回答 1

1

您不能自行绑定到这些事件的原因wxGrid是它是一个复合窗口,如文档的“组件窗口的访问器”部分中所述。因此,例如,要使此代码正常工作,您需要调用GetGridWindow()->Bind(...)

或者,如果足够的话,您可以并且可能应该使用更高级别的事件,例如已经提到的wxEVT_GRID_CELL_RIGHT_CLICK.

于 2018-11-08T22:36:20.627 回答