wxwidget自定义消息处理步骤
from
http://www.cppblog.com/kenlistian/archive/2009/02/06/73096.html
略有修改
自定义消息处理
(不知道在wxpython,wxruby如何自定义类型消息?
最好装个wxpython,在其demo现场编写现场查看结果)
步骤如下:
1.在宏里处理如下:
a.
BEGIN_DECLARE_EVENT_TYPES()
DECLARE_EVENT_TYPE(wxEVT_MYCOMMAND, xxxx)
END_DECLARE_EVENT_TYPES()
xxxx 为自定义数字,不过翻到wxwidget内部,其宏定义中该value好像
没用!(...)
b. 定义wxEvT_MYCOMMAND 标识
DEFINE_EVENT_TYPE(wxEVT_MYCOMMAND)
c. 定义宏EVT_MYCOMMAND
格式中把自定义标识改为自己即可.拷贝.
#define EVT_MY_CUSTOM_COMMAND(id, fn) \
DECLARE_EVENT_TABLE_ENTRY( \
wxEVT_MYCOMMAND, id, wxID_ANY, \
(wxObjectEventFunction)(wxEventFunction)wxStaticCastEvent( wxCommandEventFunction, &fn ), \
(wxObject *) NULL \
),
2.在BEGIN_EVENT_TABLE表中自定义映射.
EVT_MY_CUSTOM_COMMAND(wxID_ANY, MyFrame::OnMyfunction)
3.处理投递
自定义消息发送,this 一般是接受消息handler,也可其它wxEvtHandler.
wxCommandEvent myEvent(wxEVT_MY_CUSTOM_COMMAND);
wxPostEvent(this, myEvent);
4.自定义消息处理函数
必须符合wxCommandEventFunction格式,既为如下:
void OnMyfunction(wxCommandEvent& event);
wxwidget自定义消息处理步骤的更多相关文章
- [原] Android 自定义View步骤
例子如下:Android 自定义View 密码框 例子 1 良好的自定义View 易用,标准,开放. 一个设计良好的自定义view和其他设计良好的类很像.封装了某个具有易用性接口的功能组合,这些功能能 ...
- 【转】IOS版本自定义字体步骤
本文转载自:http://quick.cocoachina.com/wiki/doku.php?id=ios%E7%89%88%E6%9C%AC%E4%BD%BF%E7%94%A8%E8%87%AA% ...
- 利用自定义消息处理函数的WPARAM或LPARAM参数传递指针
有自定义消息: #define WM_TEST WM_USER+121 消息处理函数: afx_msg void OnTest(WPARAM wParam,LPARAM lParam); 该消息是一个 ...
- SpringBoot自定义配置步骤
1. 在yml中填写自定义配置 ly: sms: accessKeyId: # 短信配置 accessKeySecret: signName: xx商城 # 签名名称 verifyCodeTempla ...
- 发布Qt Widgets桌面应用程序的方法(自定义进程步骤,用QT Creator直接生成)
发布Qt Widgets桌面应用程序的方法 Qt是一款优秀的跨平台开发框架,它可以在桌面.移动平台以及嵌入式平台上运行.目前Qt 5介绍程序发布的文章帖子比较少.大家又非常想要知道如何发布Qt应用程序 ...
- 自定义Qt构建步骤,添加数据文件(txt,json等)到构建目录
Qt的qrc资源文件是只读的,因此我们如果要用txt之类的文件存储数据,在程序运行过程中就不能对它们进行修改,也就是不能进行读操作.用"file.open(QIODevice::WriteO ...
- 用c#开发微信(3)基于Senparc.Weixin框架的接收普通消息处理 (源码下载)
本文讲述使用Senparc.Weixin框架来快速处理各种接收的普通消息.这里的消息指的是传统的微信公众平台消息交互,微信用户向公众号发送消息后,公众号回复消息给微信用户.包括以下7种类型: 1 文本 ...
- SharePoint 2013 状态机工作流之扩展自定义状态
当我们使用SharePoint 2013的状态机工作流时,发现一个非常不爽的事情,就是SharePoint 所有的工作流状态,都是固定的那些,没办法显示我们自定义的状态,后来经过Google发现,原来 ...
- Android自定义View4——统计图View
1.介绍 周末在逛慕课网的时候,看到了一张学习计划报告图,详细记录了自己一周的学习情况,天天都是0节课啊!正好在学习Android自定义View,于是就想着自己去写了一个,这里先给出一张慕课网的图,和 ...
随机推荐
- account for 与led to和result in的区别
account for sth:be the explanation of sth; explain the cause of sth 作某事物的解释; 解释某事物的原因:His illness ac ...
- jstat命令的使用及VM Thread分析
http://www.javatang.com/archives/2017/10/20/12131956.html 前面提到了一个使用jstack的shell脚本,通过命令可以很快地定位到指定线程对应 ...
- Intellij idea远程debug连接tomcat,实现单步调试
转载:http://blog.csdn.net/boling_cavalry/article/details/73384036 web项目部署到tomcat上之后,有时需要打断点单步调试,如果用的是I ...
- 倍福TwinCAT(贝福Beckhoff)基础教程5.1 TwinCAT-1 获取和设置系统时间
使用功能块NT_GetTime,NETID填写两个单引号表示本机,START就是一个触发信号,一般的功能块都需要一个上升沿触发执行,最后的输出类型都是让系统自己决定,然后统一把这些变量放到全局变量中( ...
- 倍福TwinCAT(贝福Beckhoff)基础教程2.2 TwinCAT常见类型使用和转换_指针
定义pt为指向INT类型的指针,在程序中取得var_int1的地址(INT类型),然后将地址对应的数据还原给var_int2(pt^的写法) 更多教学视频和资料下载,欢迎关注以下信息: 我的优 ...
- JAVA Eclipse如何导出APK程序
为了最快的导出程序,直接导出未签名的APK 但是大部分手机不允许安装未经签名的程序 导出签名的项目 设置密码,后面的都可以随便设置 这样最后生成的APK就可以直接双击完成安装 ...
- configure.ac:8: error: Autoconf version 2.64 or higher is required
安装Resource Agents的时候出现错误:configure.ac:9: error: Autoconf version 2.63 or higher is required.指的是autoc ...
- eclipse黄色警告(finally block does not complete normally) ,不建议在finally中使用return语句
在eclipse中编写例如以下的代码,eclipse会给出黄色告警:finally block does not complete normally. public class Test { publ ...
- CMake 按照文件目录组织VS工程的筛选器
macro(group_src_by_dir src_files) foreach(file_path ${${src_files}}) relative_path ${file_path}) str ...
- 遍历修改django bootstrap form 为 django bootstrap3
#!/usr/bin/env python # encoding: utf-8 import re import os fname = '' bt_pattern = re.compile(r'{% ...