wxWidgets:事件
wxWidgets:事件
介绍
wxEvent 是一个围绕 wx 程序传输信息的类(通常的信息只是“嘿,发生了一些事情”:例如“鼠标在我体内移动”)。
wxCommandEvent 是用于菜单事件等的子类。主要区别在于它传播到父类。
因此,如果 wxTextCtrl 中发生鼠标移动,则 wxMouseEvent 将通知 textctrl。然后该事件将终止:它不会传递给 textctrl 的父级(可能是 wxPanel 或 wxFrame),因为父类不需要知道此类事件。
如果点击一个wxButton,它发送一个wxCommandEvent,因为它很可能是父类的兴趣按钮点击。所以这个事件确实向上传递到按钮的父级、祖父级等(直到其中一个处理它并且不调用 Skip())。
还有其他事件类,通常是 wxCommandEvent 的子类,它们为更复杂的信息提供了空间,例如选择了哪个项目。您还可以创建自己的自定义事件子类,其中可以包含您想要的任何内容。
不要被 event type混淆,即使名称通常相似。wxEVT_MOTION 是一个事件类型,它只是一个 int(实际上是枚举中的一个条目)。它在创建 wxMouseEvent 时用