我是wxWidgets的初学者,所以这是我遇到麻烦的一个非常基本的事情。我想知道如何定义一个自定义的winid,例如" ID_MENU_CIRCLE"已经定义了winid的EVT_MENU。
BEGIN_EVENT_TABLE(ShapeFrame,wxFrame)
EVT_MENU(ID_MENU_CIRCLE, ShapeFrame::OnModelCircle)
END_EVENT_TABLE()
答案 0 :(得分:0)
您可能会混淆事件 ID 和事件类型。所有菜单项都生成wxEVT_MENU
类型的事件,但每个事件都带有自己的唯一ID,对应于生成它的菜单项的ID。菜单项ID只是唯一的整数,允许您唯一标识项目。
所以你的ID_MENU_CIRCLE
可以是任何整数,可以只是
const int ID_MENU_CIRCLE = 100;
但使用枚举定义这些常量很常见,因为你通常会有很多常量:
enum {
ID_MENU_CIRCLE = 100,
ID_MENU_SQUARE,
...
};