wxWidgets:简单消息处理
2013-12-21 17:10
141 查看
早期的wxWidgets使用类似MFC的方式进行消息处理;在新版中这种映射方式仍然得以保留。
在MyFrame.h中添加:
OnQuitButton是事件处理函数,我们用它来处理按键消息。该函数接受一个wxCommandEvent引用参数。
wxDECLARE_EVENT_TABLE()表示我们将会在该类中处理一些消息。最好将该语句放在类的最后:它会改变成员访问类型。
消息处理函数返回void类型。
在MyFrame.cpp中添加:
我们使用wxBEGIN_EVENT_TABLE(MyFrame, wxFrame)和wxEND_EVENT_TABLE()来定义消息映射表。
宏wxBEGIN_EVENT_TABLE的两个参数中,MyFrame表示用于处理消息的函数所在的class;wxFrame表示MyFrame处理不了的消息将由wxFrame处理。
EVT_BUTTON给Tool指定消息处理函数。EVT_BUTTON宏的第一参数是你自己定义的Tool ID,在某个enum中从1开始指定;第二参数就是你的消息处理函数。
在该消息处理函数中,我们关闭窗口。wxApp Framework检测到所有窗口已关闭后退出App。
在MyFrame.h中添加:
private: void OnQuitButton(wxCommandEvent &event); wxDECLARE_EVENT_TABLE();
OnQuitButton是事件处理函数,我们用它来处理按键消息。该函数接受一个wxCommandEvent引用参数。
wxDECLARE_EVENT_TABLE()表示我们将会在该类中处理一些消息。最好将该语句放在类的最后:它会改变成员访问类型。
消息处理函数返回void类型。
在MyFrame.cpp中添加:
void MyFrame :: OnQuitButton(wxCommandEvent &event) { Close(true); } wxBEGIN_EVENT_TABLE(MyFrame, wxFrame) EVT_BUTTON(ID_BUTTON_QUIT, MyFrame::OnQuitButton) wxEND_EVENT_TABLE()
我们使用wxBEGIN_EVENT_TABLE(MyFrame, wxFrame)和wxEND_EVENT_TABLE()来定义消息映射表。
宏wxBEGIN_EVENT_TABLE的两个参数中,MyFrame表示用于处理消息的函数所在的class;wxFrame表示MyFrame处理不了的消息将由wxFrame处理。
EVT_BUTTON给Tool指定消息处理函数。EVT_BUTTON宏的第一参数是你自己定义的Tool ID,在某个enum中从1开始指定;第二参数就是你的消息处理函数。
在该消息处理函数中,我们关闭窗口。wxApp Framework检测到所有窗口已关闭后退出App。
相关文章推荐
- wxWidgets:简单消息处理
- 消息队列的简单处理
- Android 异步消息处理简单理解
- 一个简单处理消息的例子-sendmessage应用
- Android多线程,异步消息处理机制, Thread, AsyncTask 简单总结
- wxWidgets第三课 MSWWindowProc处理窗口消息
- 用python的twisted做个简单游戏服务器原形--客户端消息处理和重组类MessageQueue
- c# 的简单消息处理——应用程序自动锁定
- 简单应答处理消息解析器模型
- Disruptor多个消费者独立处理生产者消息的简单demo
- MFC 消息处理的简单理解
- 32.Android之消息处理系统Looper、Handler、Thread简单学习
- wxWidgets:消息处理流程
- Linux下,使用C/C++编写一个简单的消息处理程序
- android Handler及消息处理机制的简单介绍
- 我在BCB中实现消息处理的简单代码--XJQ2003
- wxWidgets处理Windows消息
- 简单粗暴理解android异步消息处理机制
- 简单消息处理的实现--观察者模式应用
- 处理IOT中纷繁的数据与消息_从未如此简单