自定义消息的操作方法ON_MESSAGE(..)

ON_MESSAGE响应的是自定义消息,有关自定义消息的处理请看如下步骤:

定义消息:

在CCDlg类的头文件中加入如下代码:

#define WM_CUSTOMIZE WM_USER+1 

头文件中加入Customize的声明:

afx_msg LRESULT Customize(WPARAM wParam, LPARAM lParam);

cpp文件中加入消息的注册

ON_MESSAGE(WM_CUSTOMIZE, Customize)

加入消息响应函数实现

在CCDlg类的实现文件中加入消息响应函数的实现部分,代码如下:

void CCDlg::Customize(WPARAM wParam, LPARAM lParam) 
{ 
CString strTittle; 
strTittle.Format("自定义消息参数:x=%d,y=%d",wParam,lParam); 
SetWindowText(strTittle); 
}

显式地发送消息:

在主框架的“帮助”主菜单中加入“自定义消息”子菜单,其ID设为ID_CUSTOMIZE,通过类向导响应该命令,函数名默认。其函数体如下:

void CMainFrame::OnCustomize() 
{

POINT pos; 
//将消息参数定义为屏幕坐标值 
GetCursorPos(&pos); 
pdlg->SendMessage(WM_CUSTOMIZE,Customize,(UINT)pos.x,pos.y); 
}

相关参考:https://www.cnblogs.com/zhangwuji/p/5260380.html

posted @   鲸小鱼-  阅读(381)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
历史上的今天:
2019-07-02 怎么把实际路径是英文的文件夹显示中文名?
点击右上角即可分享
微信分享提示