WxWidgets动态事件处理程序调整大小

时间:2015-03-27 00:33:10

标签: c++ user-interface wxwidgets

在使用动态事件表与静态事件表时的WxWidgets中,捕获resize事件。 使用静态表我

EVT_SIZE(MyFrame::OnSize)

以供我使用的菜单项

参考
EVT_MENU(wxID_ABOUT, MyFrame::OnAbout)
//for the dynamic
frame->Connect( wxID_ABOUT,
    wxEVT_COMMAND_MENU_SELECTED,
    wxCommandEventHandler(MyFrame::OnAbout) );

好的,所以使用动态设置中的菜单使用wxEVT_COMMAND_MENU_SELECTED 在静态设置中,我使用EVT_MENU。所以我的问题是我使用什么而不是EVT_SIZE? 我还想知道两个EVT_MENU和wxEVT_COMMAND_MENU_SELECTED之间的区别是什么。还有一个类似的东西是c ++吗?枚举

2 个答案:

答案 0 :(得分:0)

  

我的问题是我应该使用什么而不是EVT_SIZE?

wxEVT_SIZE

答案 1 :(得分:0)

在wxWidgets 3.0中,您可以而且应该使用wxEVT_MENU而不是wxEVT_COMMAND_MENU_SELECTED,因为所有事件类型常量都已重命名为宏使用的相同名称,以保持一致性(旧名称仍然存在兼容性,使用它们没有真正的危害,但它们很长而且不实用,所以为什么要这么麻烦。

至于类型,wxEVT_XXX本身只是int s,但也有wxEventTypeTag<>模板的匹配特化,所以你不能只定义自己的模板,请参阅wxDECLARE_EVENT()wxDEFINE_EVENT()宏以了解正确的方法。