VC自定义消息响应函数postmessage用法示例

Judy ·
更新时间:2024-09-20
· 903 次阅读

本文实例讲述了VC自定义消息响应函数postmessage的用法。分享给大家供大家参考。具体实现步骤如下:

1. 在 resource.h文件添加如下代码 定一个自己的消息
代码如下:#define WM_MY_MESSAGE      WM_USER + 100       //---------------------by tyds

2.在...view.h的文件添加如下:

代码如下://{{AFX_MSG(CPostmessageView)
afx_msg void Ontydspostmessage();

afx_msg /*LRESULT*/ void OnMyMessage(/*WPARAM wParam, LPARAM lParam*/); //----- by tyds

//}}AFX_MSG
DECLARE_MESSAGE_MAP()

3.在...view.cpp文件添加如下代码
代码如下:BEGIN_MESSAGE_MAP(CPostmessageView, CView)
//{{AFX_MSG_MAP(CPostmessageView)
ON_COMMAND(ID_tyds_postmessage, Ontydspostmessage)
ON_MESSAGE(WM_MY_MESSAGE, OnMyMessage)      //添加消息映射---------------------by tyds
//}}AFX_MSG_MAP
// Standard printing commands
ON_COMMAND(ID_FILE_PRINT, CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT, CView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, CView::OnFilePrintPreview)
END_MESSAGE_MAP()

void CPostmessageView::Ontydspostmessage()
{
MessageBox("begin post message!");
//PostMessage(WM_MY_MESSAGE);     //这里 PostMessage SendMessage 两则区别是
SendMessage(WM_MY_MESSAGE);       //PostMessage 是发出去就返回 而SendMessage是发出去等到被执行了再返回
}

消息相应函数
/*LPESULT*/void   CPostmessageView::OnMyMessage(/*WPARAM wParam, LPARAM lParam*/) //注意这里的参数可要可不要 根据自己来定 返回值也一样
{

MessageBox("post msg finished!");
// return 0;
}

希望本文所述对大家的VC程序设计有所帮助。

您可能感兴趣的文章:JQuery Ajax 跨域访问的解决方案在Ajax中使用Flash实现跨域数据读取的实现方法跨域请求之jQuery的ajax jsonp的使用解惑利用iframe实现ajax跨域通信的实现原理(图解)JQuery的Ajax跨域请求原理概述及实例完美解决AJAX跨域问题用iframe设置代理解决ajax跨域请求问题jquery的ajax和getJson跨域获取json数据的实现方法jquery跨域请求示例分享(jquery发送ajax请求)JavaScript使用HTML5的window.postMessage实现跨域通信例子ajax跨域请求js拒绝访问的解决方法IE9版本以下ajax 跨域问题可行解决方法VC中SendMessage和PostMessage的区别使用HTML5中postMessage知识点解决Ajax中POST跨域问题



示例 postmessage

需要 登录 后方可回复, 如果你还没有账号请 注册新账号