关闭

vc 菜单

标签: commandmfc框架文档工具
360人阅读 评论(0) 收藏 举报

1 .弹出菜单( Pop-up) 是不能用来作命令响应的。

2 MFC 中菜单项消息如果利用 ClassWizard 来对菜单项消息分别在上述四个类中进行响应,则菜单消息传递顺序: View --Doc --CMainFrame --App 类。菜单消息一旦在其中一个类中响应则不再在其它类中查找响应函数。

具体:

当点击一个菜单项的时候,最先接受到菜单项消息的是 CMainFrame 框架类, CMainFrame 框架类将会把菜单项消息交给它的子窗口 View 类,由 View 类首先进行处理;如果 View 类检测到没对该菜单项消息做响应,则 View 类把菜单项消息交由文档类 Doc 类进行处理;如果 Doc 类检测到 Doc 类中也没对该菜单项消息做响应,则 Doc 类又把该菜单项消息交还给 View 类,由 View 类再交还给 CMainFrame 类处理。如果 CMainFrame 类查看到 CMainFrame 类中也没对该消息做响应,则最终交给 App 类进行处理。

3 .消息的分类:标准消息,命令消息,通告消息。

[ 标准消息 ] :除 WM_COMMAND 之外,所有以 WM_ 开头的消息。

[ 命令消息 ] :来自菜单、加速键或工具栏按钮的消息。这类消息都以 WM_COMMAND 呈现。

MFC 中,通过菜单项的标识( ID )来区分不同的命令消息;在 SDK 中,通过消息的 wParam 参数识别。

[ 通告消息 ] :由控件产生的消息,例如,按钮的单击,列表框的选择等均产生此类消息,为的是向其父窗口(通常是对话框)通知事件的发生。这类消息也是以 WM_COMMAND 形式呈现。

说明:

1 )从 CWnd 派生的类,都可以接收到 [ 标准消息 ]

2 )从 CCmdTarget 派生的类,都可以接收到 [ 命令消息 ] [ 通告消息 ]

%
0
0

猜你在找
【直播】机器学习&数据挖掘7周实训--韦玮
【套餐】系统集成项目管理工程师顺利通关--徐朋
【直播】3小时掌握Docker最佳实战-徐西宁
【套餐】机器学习系列套餐(算法+实战)--唐宇迪
【直播】计算机视觉原理及实战--屈教授
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之矩阵--黄博士
【套餐】微信订阅号+服务号Java版 v2.0--翟东平
【直播】机器学习之凸优化--马博士
【套餐】Javascript 设计模式实战--曾亮
查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:11186次
    • 积分:300
    • 等级:
    • 排名:千里之外
    • 原创:16篇
    • 转载:2篇
    • 译文:0篇
    • 评论:1条