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

       昨天在研究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!"));

       }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值