欢迎来到天天文库
浏览记录
ID:59100709
大小:120.50 KB
页数:63页
时间:2020-09-25
《第二章资源在Windows编程中的应用ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第二章资源在Windows编程中的应用在Windows应用程序中可以使用几种不同类型的资源,如加速键、位图、对话框和菜单等。这些资源可以使用VC提供的资源编辑器来实现创建和编辑。资源的使用,方便了应用程序与用户之间的交互界面的设计。第二章资源在Windows编程中的应用菜单与加速键资源图标资源的应用菜单与加速键资源菜单是Windows图形用户界面中窗口的重要组成部分。菜单可使用户直观地了解并使用应用程序所提供的功能。加速键可使菜单的操作更灵活快捷,两种资源往往密不可分。菜单与加速键资源菜单由以下及部分组成:窗口主菜单条下拉式菜单
2、框菜单项热键标识菜单项加速键标识菜单项分隔线选中与否的标识菜单与加速键资源菜单的创建过程操作菜单项动态地创建菜单加速键资源创建菜单资源实例菜单的创建过程定义菜单菜单在资源描述文件中的定义形式为:菜单名MENU[,选项]{菜单项列表}菜单名标识特定的菜单,应用程序通过菜单名加载制定菜单。菜单的创建过程定义菜单MENU关键字,用来标识资源的性质。载入特性选项,用来标识菜单所具有的载入特性。菜单的创建过程定义菜单菜单项——POPUP语句定义弹出式菜单,形式为:POPUP“菜单项名(&Key)”[,选项];加入符号“&”可定义该菜单项
3、的热键菜单的创建过程定义菜单菜单项——MENUITEM语句定义菜单项,形式为:MENUITEM“菜单项名”,ID[,选项]ID为菜单项标识。WM_COMMAND消息中字参数wParam中包含选中菜单项的标识。水平分隔符:MENUITEMSEPARATOR菜单的创建过程定义菜单例在“Menu”的窗口中创建一个“文件”菜单。该菜单含有“新建”、“打开”、“关闭”、“保存”、“另存为”及“退出”等菜单项。菜单项均使用热键;并且“退出”项与其他菜单项之间用分隔线分开。//menu.rc#include#includ
4、e“Menu.h”∥菜单定义MenuMENUMOVEABLE∥Menu为窗口菜单的名称{POPUP“文件(&F)”∥定义“文件”弹出式菜单{MENUITEM“新建(&N)”,IDM_NEWMENUITEM“打开(&O)”,IDM_OPENMENUITEM“关闭(&C)”,IDM_CLOSEMENUITEM“保存(&S)”,IDM_SAVEMENUITEM“另存为(&A)”,IDM_SAVEASMENUITEMSEPARATOR∥分隔线MENUITEM“退出(&X)”,IDM_EXIT}}Menu.h定义了菜单项标识所对应的数值:…#
5、defineIDM_NEW10#defineIDM_OPEN11#defineIDM_CLOSE12#defineIDM_SAVE13#defineIDM_SAVEAS14#defineIDM_EXIT15…菜单的创建过程加载菜单资源在窗口类中加载菜单…WNDCLASSwndclass;…wndclass.lpszMenuName=lpszMenuName;菜单的创建过程加载菜单资源在创建窗口时加载菜单应用程序需先调用函数LoadMemu加载菜单HMENULoadMemu(hInstance,//当前程序的实例句柄lps
6、zMenuName//窗口菜单名);如:hmenu=LoadMenu(hlnstance,"Menu");hwnd=CreateWindow(…,hmenu,…,);菜单的创建过程加载菜单资源动态加载菜单应用程序获取菜单句柄后,可通过SetMenu动态地加载菜单BOOLSetMenu(HWNDhwnd,//Hwnd为窗口句柄HMENUhmenu//hmenu为菜单句柄);采用这种方法,可在同一个应用程序中实现多种不同的菜单操作界面菜单的创建过程禁止或激活菜单项创建菜单时,可以调用函数EnableMenuItem改变其初始
7、状态DWORDEnableMenuItem(HMENUhmenu,UlNTwIDEnableItem,//被禁止或激活的菜单项标识UINTdwEnable)//dwEnable为菜单项操作标识MF_BYCOMMAND以ID值标识菜单项MF_ENABLED激活菜单项MF_BYPOSITION以位置标识菜单项MF_GRAYED禁止菜单项并使其变灰显示MF_DISABLED禁止菜单项菜单的创建过程禁止或激活菜单项例禁止弹出式菜单“文件”中的“打开”项的形式如下:EnableMenuItem(hmenu,IDM_OPEN,MF_B
8、YCOMMAND
9、MF_DISABLED);操作菜单项设置或取消选中(“√”)标志在资源描述文件中设置菜单项为CHECKED;调用函数CheckMenuItem设置或取消选中标志DWORDCheckMenultem(HMENUhmen
此文档下载收益归作者所有