VC++之自定义消息
用户可以自定义消息,在应用程序中主动发出,这种消息一般用于应用程序的某一部分内部处理。
实例说明:
当用户按键盘上的光标上移键时,程序发送用户自定义消息,在对应的消息响应函数中弹出消息对话框,显示消息发送成功。
操作步骤:
(1)创建一个单文档应用程序,名为:自定义消息处理。
(2)定义用户消息ID(标识符)值,在视图类的头文件CMyView.h中的前面写如下语句,定义用户消息的标识符:
…
#endif //_MSC_VER > 1000
#define WM_MYMESSAGE (WM_USER + 1)
class CMyView : public CView
{
…
}
(3)声明并自定义用户消息响应函数:
单击项目工作区ClassView,展开“自定义消息处理files”,右键单击CMyView,在弹出的快捷菜单中单击Add Member Function,在弹出的对话框中的Function Type(函数类型)处写:void,在Function Declaration(函数声明)处写:OnMyFunction(),这时就将该消息响应函数加到CMyView.cpp中了,并添加代码:
void CMyView::OnMyFunction()
{
MessageBox(“恭喜你,消息发送成功!”);
}
(4)在视图类的实现文件CMyView.cpp中的消息入口处添加消息映射:
BEGIN_MESSAGE_MAP(CMyView, CView)
//{{AFX_MSG_MAP(CMyView)
ON_MESSAGE(WM_MYMESSAGE, OnMyFunction)
//}}AFX_MSG_MAP
(5)编写程序代码
将WM_KEYDOWN消息响应函数(用户按光标上移键时,将产生该消息)映射到视图类CMyView中,并加代码:
void CMyView::OnKeyDown(UINT nChar, UINT nRepCnt, UINT nFlags)
{
HWND hWnd = GetSafeHwnd(); //接收消息的窗口句柄
if(nChar == VK_UP) //光标上移键
{
::PostMessage(hWnd, WM_MYMESSAGE, 0, 0); //将自定义消息插入消息队列并返回
return ;
}
CView::OnKeyDown(nChar, nRepCnt, nFlags);
}
(6)编译运行,按键盘上的光标上移键,程序发送自定义消息,弹出一个对话框,如下图所示:
VC++之自定义消息相关推荐
- VC++ 实现自定义消息
mfc中一般是处理Windows自身的消息,如果必要,也可以实现自定义消息: 新建一个对话框工程:添加一个按钮: 在 Resource.h中定义一个消息,标识符为WM_MYMSG:自定义消息从WM_U ...
- VC++如何处理自定义消息
ClassWizard不允许增加用户自定义消息,所以你必须手工输入.输入后,ClassWizard就可以象处理其它消息一样处理你自定义的消息了. 下面是增加自定义消息的步骤: 第一步:定义消息.开发W ...
- VC中自定义消息ON_MESSAGE的用法
在一个对话框mark.cpp中,自定义一个消息, 首先在mark.cpp中添加 #define WM_DATA WM_USER+100 之后再mark.h里 protected: // Gener ...
- VC++ 自定义消息学习总结
VC添加自定义消息 http://blog.csdn.net/jinnee_cumtb/article/details/4524375 VC的ClassWizard不允许增加用户自定义消息,所 ...
- java 自定义消息_Vc中自定义消息及其触发使用
Vc中自定义消息及其触发使用 如何在VC++中加入自定义消息,我的做法: 这里我以一个对话框为例子,环境:VS 2008,新建一个工程,选择对话框:以编译器给出的对话框为蓝本,自己新建一个按钮如图: ...
- MFC 自定义消息四步曲与在参数中传递变量
今天自己也重学了一下 VC小自定义消息的使用,在网上查阅了相关资料,发现http://hi.baidu.com/atlight/blog/item/11ba969442df6218d21b70cd.h ...
- vc中怎么使用SendMessage自定义消息函数
vc中怎么使用SendMessage自定义消息函数: SendMessage的基本结构如下: SendMessage( HWND hWnd, //消息传递的目标窗口或线程的句柄. U ...
- VC自定义消息postmessage用法(消息响应函数)
VC 自定义消息 postmessage用法 1. 在 resource.h文件添加如下代码 定一个自己的消息 #define WM_MY_MESSAGE WM_USER + 100 //------ ...
- c语言调用Windows自定义消息,VC自定义消息postmessage用法(消息响应函数)
VC 自定义消息 postmessage用法 1. 在 resource.h文件添加如下代码 定一个自己的消息 #define WM_MY_MESSAGE WM_USER + 100 //------ ...
最新文章
- “悬空指针”和“野指针”究竟是什么意思?有什么区别
- 计算机组成原理mbps,2016年湖北师范学院计算机组成原理(同等学力加试)复试笔试仿真模拟题...
- Pycharm运行项目代码时输入可选参数
- 大学应届毕业生面临的压力和应对办法
- fast虚拟服务器ip地址设置,迅捷路由器静态ip怎么设置_迅捷固定IP地址怎么设置?-192路由网...
- Error running SecureCardJavaApp. Command line is too long. Shorten the command line and rerun.
- 关于微信公众号自动回复文本、图片以及图文
- vue2与vue3的实例销毁,有什么区别。
- uni-app 全局变量的几种实现方式
- linux带source地址ping,实战经验:Linux Source NAT在Ping场景下的应用
- 利用OPENCV创作梵高艺术风格图片
- 像中文的罗马音字体复制_罗马音大全可复制app中文下载
- Linux系统挂起之后退出的方法
- 网站的架构CS和中间件
- 放假倒计时弹幕单页网站源码
- python与人工智能课程设计_人工智能+机器人入门与实战:用树莓派+Python+OpenCV制作计算机视觉机器人...
- Web打印--Lodop使用手册install_lodop.exe
- 2019软件测试自学必看
- python百钱买百鸡代码_python解决百钱买百鸡
- Web前端学习第五周