vc 菜单

原创 2011年01月08日 23:04:00

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 派生的类,都可以接收到 [ 命令消息 ] [ 通告消息 ]

%
版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

《VC++深入详解》学习笔记 第六章 菜单

1.菜单栏、工具栏、状态栏 2.菜单命令响应函数       菜单编辑器—添加菜单项—输入ID号(ID后加一个标识资源类型的字母,比如:IDM_菜单资源;IDC_光标资源;IDI_图标资源)—为该...

VC++任务栏托盘图标及右键菜单实现

Windows 95以及后来的Windows版本允许你将程序图标放入系统托盘。所谓系统托盘,通常指的是屏幕右下方显示时间,音量等图标的那个区域。托盘图标通常可以执行一些快捷操作,如窗口隐藏时通常最小化...

孙鑫VC++视频学习笔记(第六课 菜单的工作原理及编写控件)

消息分类 1.标准消息: 除WM_COMMAND之外,所有以 WM_ 开头的消息。 从CWnd派生的类,都可以接收到这类消息 2.命令消息 来自菜单、加速键或工具栏按钮的消息。这类消息都以W...
  • LXnow
  • LXnow
  • 2011-12-09 16:01
  • 1148

VC++深入解析(六)(菜单)

菜单项和菜单命令响应函数 1、创建基于单文档工程Menu,添加菜单项:IDM_TEST  Test 2、通过类向导, 为IDM_TEST在CMainFrame、CMenuView、CMenuDoc...

vc循序渐进实现仿QQ界面(六):异型菜单与内建滚动条自绘

本篇演示实现仿QQ界面的异型菜单与滚动条自绘。 先讲解一下如何实现QQ的圆角菜单,这个要用到HOOK了,因为菜单是一种特殊的窗口,无法用FindWindow或通过HMENU来获取到窗口句柄,也就...

VC中为clistctrl右键弹出菜单【转】

一、在资源编辑器中建立一个菜单资源   新建一个菜单资源,比如把菜单的ID号为IDC_POPMENU。此菜单有一项两层,即有一个可弹出的菜单项,而此菜单项的弹出内容即为将要建立的弹出式菜单的内容。...

【VC++】010菜单命令的路由

祝各位元旦快乐...元旦小放了点假,放松一下...继续前行 接着009菜单命令响应函数继续往后看,今天了解菜单命令的路由; 1.程序类对菜单命令的响应顺序 在前面的一篇中,菜单项命令是由CMain...

VC++ 解析CAD菜单

.H // CadMenuParserDlg.h : 头文件 // #pragma once // CCadMenuParserDlg 对话框 class CCadMenuParserDl...

VC MFC菜单

VC MFC菜单 菜单项属性说明: ID 标识菜单的唯一常量。 Caption    菜单项标题,“&" 后面的字符为快捷键,在菜单项后的字符将加下划线。 Separator 水平线,...

VC 创建弹出式菜单

步骤: (1) 创建一个基于对话框的应用程序 (2)在工作区选择资源视图,插入一个菜单资源,添加菜单项 (3)在对话框的头文件中声明一个CMenu类对象m_Menu (4)在OnInitDia...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)