您的位置:首页 > 其它

[罗振辉]MFC中菜单命令路由方式

2009-02-23 22:59 190 查看
昨天在研究window mobile菜单编程的时候遇到了菜单路由方法的问题。其实这个问题在去年就已经遇到过了,而且得到了解决但是一直以来都没有去认真的总结一下。

window消息分三种类型:标准形式(WM_COMMAND)、命令形式(一般与ID_开头)、通告消息形式(一般是事件触发进行、处理方法一般是一个函数)。

菜单命令路由方式是标准的消息处理形式。具体路由步骤如下

(1)在视类的源程序中有两处信息,在两个AFX_MSG注释宏之间添加命令消息相应函数原型。

protected:

//{{AFX_MSG(CMenuView)

afx_msg void OnTest();-----添加的消息相应函数原型

//}}AFX_MSG

(2)在视类的源文件中有两处信息,一处是在两个AFX_MSG_MAP注释宏之间添加了ON_COMMAND宏,将菜单ID与命令相应函数关联起来。

BEGIN_MESSAGE_MAP(Cmenuview cview)

ON_WM_CNTEXTMENU();

//{{AFX_MSG_MAP(CMENUVIEW)

ON_COMMAND(IDM_TEST,OnTest);

//}}AFX_MSG_MAP

(3)添加函数原型和具体代码

void CMenuView::OnTest()

{

//TODO:Add your command handler code here

MessageBox(LPSTR("Hello world!"));

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: