清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第7章 资源Windows源在编程中的应用

第7章资源在 Windows编程中 的应用 加速键 位图 光标 资源〈对话框 菜单 字符串 工具条
1 第7章 资源在Windows编程中 的应用 加速键 对话框 位图 资源 光标 菜单 工具条 字符串

7.1菜单和加速键资源及其应用 菜单由以下组成部分: (1)窗口主菜单条 (2)下拉式菜单框 (3)菜单项热键标识 (4)菜单项加速键标识 (5)菜单项分隔线
2 7.1菜单和加速键资源及其应用 菜单由以下组成部分: (1) 窗口主菜单条 (2) 下拉式菜单框 (3) 菜单项热键标识 (4) 菜单项加速键标识 (5) 菜单项分隔线

711菜单的创建过程 (1)定义菜单 菜单在资源描述文件中的定义形式为: 选项 说明 字符串,或 DISCARDABLE当不再需要菜单时可丢弃 1-6532 FIXED将菜单保存在内存中的固定位置 间的整数I0 ADONCALL需要时加载菜单 MOVEABLE菜单在内存中可移动 PRELOAD 立即加载菜单 menuID menu[,载入特性选项]{莱单项列表} POPUP语句 MENUITEM语句
3 7.1.1菜单的创建过程 (1)定义菜单 菜单在资源描述文件中的定义形式为: menuID MENU [,载入特性选项]{菜单项列表} 字符串,或 1~65535之 间的整数 选 项 说 明 DISCARDABLE 当不再需要菜单时可丢弃 FIXED 将菜单保存在内存中的固定位置 LOADONCALL 需要时加载菜单 MOVEABLE 菜单在内存中可移动 PRELOAD 立即加载菜单 POPUP语句 MENUITEM语句

POUP语句定义弹出式菜单,其形式为: POPUP"菜单项名”[,选项]; 选项 说明 MENUBARBREAK 菜单项纵向分隔标志 CHECKED 显示选中标志 INACTIVE 禁止一个菜单项 GRAYED 禁止并变灰显示 在菜单项名中加入符号“&”,以定义热键 定义弹出式菜单项“编辑”的形式如下: POUP“编辑(&E)”;
4 POPUP语句定义弹出式菜单,其形式为: POPUP "菜单项名" [,选项]; 在菜单项名中加入符号“&”,以定义热键 定义弹出式菜单项“编辑”的形式如下: POPUP “编辑(&E)” ; 选 项 说 明 MENUBARBREAK 菜单项纵向分隔标志 CHECKED 显示选中标志 INACTIVE 禁止一个菜单项 GRAYED 禁止并变灰显示

MENUITEM用于定义菜单项,其形式为 MENUITEM"菜单项名”菜单项标识(ID)[, 选项] ID为菜单项标识,在 WM COMMAND消息 中字参数 wParam中包含选中菜单项的标识。 每个菜单项的标识必须唯一,标识值常在 头文件中定义。 如:创建菜单中的水平分隔符: MENUITEM SEPARATOR
5 MENUITEM用于定义菜单项,其形式为: MENUITEM "菜单项名" 菜单项标识(ID)[, 选项] ID为菜单项标识,在WM_COMMAND消息 中字参数wParam中包含选中菜单项的标识。 每个菜单项的标识必须唯一,标识值常在 头文件中定义。 如:创建菜单中的水平分隔符: MENUITEM SEPARATOR

该菜单在资源描述文件中的定义如下: #include #include menu.h'l ∥菜单定义 My menu MENU MOⅤ EABLE [ POPUP"文件(&F) { MENUITEM"新建(&N)", IDM NEW MENUITEM"打开(&0)", IDM OPEN MENUITEM"关闭(&C)", IDM CLOSE MENUITEM 保存(&S)", IDM SAVE MENUITEM"另存为(&A)", IDM SAVEAS MENUITEM SEPARATOR MENUITEM“退出(&X)”, IDM EXIT
6 该菜单在资源描述文件中的定义如下: #include #include "Menu.h" ∥菜单定义 My_menu MENU MOVEABLE {POPUP "文件(&F)" { MENUITEM "新建(&N)" , IDM_NEW MENUITEM "打开(&O)" , IDM_OPEN MENUITEM "关闭(&C)" , IDM_CLOSE MENUITEM "保存(&S)" , IDM_SAVE MENUITEM "另存为(&A)" , IDM_SAVEAS MENUITEM SEPARATOR MENUITEM “退出(&X)” , IDM_EXIT } }

menu. h文件中定义了菜单项标识所对应的 数值: ●●●●●● #define IDM neW 10 define IDM OPEN define IDM CLOSE define IDM SAVE 13 define IDM savEAS 14 define IDM EXIt 15 ●●●
7 menu.h 文件中定义了菜单项标识所对应的 数值: …… #define IDM_NEW 10 #define IDM_OPEN 11 #define IDM_CLOSE 12 #define IDM_SAVE 13 #define IDM_SAVEAS 14 #define IDM_EXIT 15 …

(2)加载菜单资源 在窗口类中加载菜单 WNDCLASS wndclass wndclass. pszMenuName=lpszMenuName 在创建窗口时加载菜单 HWNd hwnd: hmenu hmenu hmenuLoadMenu(hInstance, "My menu") hwnd=CreateWindow(., hmenu,.) 动态加载菜单 hmenu2=LoadMenu(hInstance, Menu2); Setmenu(hwnd, hmenu2);
8 (2)加载菜单资源 在窗口类中加载菜单 在创建窗口时加载菜单 动态加载菜单 WNDCLASS wndclass; … wndclass.lpszMenuName=lpszMenuName; HWND hwnd;HMENU hmenu; … hmenu=LoadMenu(hlnstance, "My_menu"); hwnd=CreateWindow( …,hmenu, …); hmenu2=LoadMenu(hlnstance, "Menu2"); SetMenu(hwnd,hmenu2); …

7.1.2操作菜单项 1.禁止或激活菜单项据M配M的取值,可为 BOOL EnableMenultem 单项在菜单中位置 (HMENU hmenu UINT WIDEnableltem,//被禁止或激活的菜单项标识 uint dwEnable 标识 说明 MF BYCOMMAND以⑩值标识菜单项 MF ENABLED激活菜单项 MF BYPOSITION表明以位置标识菜单项 MF GRAYED禁止菜单项并使其变灰显示 MF DISABLED禁止菜单项
9 7.1.2操作菜单项 1.禁止或激活菜单项 BOOL EnableMenuItem (HMENU hmenu, UlNT wIDEnableItem,//被禁止或激活的菜单项标识 UINT dwEnable ) 据dwEnable的取值,可为 菜单项的ID值,也为该菜 单项在菜单中位置 标 识 说 明 MF_BYCOMMAND以ID值标识菜单项 MF_ENABLED 激活菜单项 MF_BYPOSITION 表明以位置标识菜单项 MF_GRAYED 禁止菜单项并使其变灰显示 MF_DISABLED 禁止菜单项

2.设置或取消选中标志 dWORD CheckMenultem hmenU hmenu uint WIDCheckitem,//莱单项标识 uint dw Check //操作标识 标识 说明 MF CHECKED添加选中标志 MF UNCHECKED删除选中标志 10
10 2.设置或取消选中标志 DWORD CheckMenuItem ( HMENU hmenu, UINT wIDCheckItem, //菜单项标识 UINT dwCheck //操作标识 ) 标 识 说 明 MF_CHECKED 添加选中标志 MF_UNCHECKED 删除选中标志
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第5讲 Windows应用程序中的键盘与鼠标.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第1讲 VC++集成开发环境.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第3讲 Windowswindows的图形设备接口及绘图.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第2讲 Windows应用程序基础.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第5讲 文本与字体.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第14章 开发 Internet应用程序.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第13章 数据库应用程序的开发.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第12章 多媒体应用程序的设计.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第11章 单文档与多文档.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第10章 在MFC中创建应用程序的资源.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第9章 Windows标准控件在可视化编程中的应用.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第8章 MFC基础知识.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第7章 资源Windows源在编程中.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第5讲 Windows应用程序中的键盘与鼠标.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第1讲 VC++集成开发环境.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第3讲 Windowswindows的图形设备接口及绘图.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第2讲 Windows应用程序基础.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第5 讲文本与字体.ppt
- 北京邮电大学自动化学院:《数据结构》第四章 串.ppt
- 北京邮电大学自动化学院:《数据结构》第六章 树与二叉树.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第8章 MFC基础知识.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第9章 Windows标准控件在可视化编程中的应用.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第10章 在MFC中创建应用程序的资源.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第11章 单文档与多文档.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第12章 多媒体应用程序的设计.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第13章 数据库应用程序的开发.ppt
- 清华大学:《VC++面向对象与可视化程序设计》课程教学资源(PPT课件讲稿)第14章 开发 Internet应用程序.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第10章 DHCP服务器配置与管理.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第11章 RAS远程访问服务器配置.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第12章 配置路由访问服务器.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第13章 VPN服务配置与管理.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第14章 证书服务配置与管理.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第15章 网络管理与维护.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第16章 Windows Server 2003安全管理.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第17章 远程管理与终端服务.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第18章 使用注册表ppt.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第19章 Windows Server 2003邮件服务器简介.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第1章 网络操作系统概述.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第20章 Windows Server 2003流媒体服务器.ppt
- 《网络操作系统》课程教学资源(PPT课件讲稿)第2章 Windows Server 2003安装与安装.ppt