- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二章 资源在indows编程中的应用
第二章资源在Windows编程中的应用 在Windows应用程序中可以使用几种不同类型的资源,如加速键、位图、对话框和菜单等。 这些资源可以使用VC提供的资源编辑器来实现创建和编辑。 资源的使用,方便了应用程序与用户之间的交互界面的设计。 第二章资源在Windows编程中的应用 菜单与加速键资源 图标资源的应用 菜单与加速键资源 菜单是Windows图形用户界面中窗口的重要组成部分。菜单可使用户直观地了解并使用应用程序所提供的功能。 加速键可使菜单的操作更灵活快捷,两种资源往往密不可分。 菜单与加速键资源 菜单由以下及部分组成: 窗口主菜单条 下拉式菜单框 菜单项热键标识 菜单项加速键标识 菜单项分隔线 选中与否的标识 菜单与加速键资源 菜单的创建过程 操作菜单项 动态地创建菜单 加速键资源 创建菜单资源实例 菜单的创建过程 定义菜单 菜单在资源描述文件中的定义形式为:菜单名 MENU [,选项]{ 菜单项列表} 菜单名标识特定的菜单,应用程序通过菜单名加载制定菜单。 菜单的创建过程 定义菜单 MENU关键字,用来标识资源的性质。 载入特性选项,用来标识菜单所具有的载入特性。 菜单的创建过程 定义菜单 菜单项——POPUP语句定义弹出式菜单,形式为: POPUP“菜单项名(Key)”[,选项]; 菜单的创建过程 定义菜单 菜单项——MENUITEM语句定义菜单项,形式为:MENUITEM “菜单项名”,ID[,选项] ID为菜单项标识。WM_COMMAND消息中字参数wParam中包含选中菜单项的标识。 水平分隔符:MENUITEM SEPARATOR 菜单的创建过程 定义菜单 例 在“Menu”的窗口中创建一个“文件”菜单。该菜单含有“新建”、“打开”、“关闭”、“保存”、“另存为”及“退出”等菜单项。菜单项均使用热键;并且“退出” 项与其他菜单项之间用分隔线分开。 菜单的创建过程 加载菜单资源 在窗口类中加载菜单…WNDCLASS wndclass;…wndclass.lpszMenuName=lpszMenuName; 菜单的创建过程 加载菜单资源 在创建窗口时加载菜单应用程序需先调用函数LoadMemu加载菜单HMENU LoadMemu ( hInstance, //当前程序的实例句柄 lpszMenuName //窗口菜单名 ); 如:hmenu=LoadMenu(hlnstance,Menu);hwnd=CreateWindow( …,hmenu, …,); 菜单的创建过程 加载菜单资源 动态加载菜单应用程序获取菜单句柄后,可通过SetMenu动态地加载菜单BOOL SetMenu ( HWND hwnd, // Hwnd为窗口句柄 HMENU hmenu // hmenu为菜单句柄); 采用这种方法,可在同一个应用程序中实现多种不同的菜单操作界面 菜单的创建过程 禁止或激活菜单项 创建菜单时,可以调用函数EnableMenuItem改变其初始状态DWORD EnableMenuItem( HMENU hmenu, UlNT wIDEnableItem, //被禁止或激活的菜单项标识 UINT dwEnable) //dwEnable为菜单项操作标识 菜单的创建过程 禁止或激活菜单项 例禁止弹出式菜单“文件”中的“打开”项的形式如下:EnableMenuItem(hmenu,IDM_OPEN, MF_BYCOMMAND|MF_DISABLED); 操作菜单项 设置或取消选中(“√” )标志 在资源描述文件中设置菜单项为CHECKED; 调用函数CheckMenuItem设置或取消选中标志DWORD CheckMenultem(HMENU hmenu, UINT wIDCheckItem, //设置或取消选中标志的菜单项标识。UINT dwCheck) //操作标识 操作菜单项 增加菜单项 在菜单的尾部增加菜单项可调用函数AppendMenuBOOL AppendMenu(aHMENU hmenu, UINT dwFlags, //新菜单项的类型标识或其他信息UINT dwIDNewItem,//新菜单项的标识LPCTSTR lpNewItem)//新菜单项的内容,取决于dwFlags 操作菜单项 增加菜单项 例在弹出式菜单“文件”的末尾增加一项“关于”的形式如下:AppendMenu(hmenu,MF_ENABLED, IDM_ABOUT,“关于(A)”); 操作菜单项 增加菜单项 在菜单中插入菜单项调用函数InsertMenu BOOL lnsertMenu(HME
文档评论(0)