欢迎来到优知文库! | 帮助中心 分享价值,成长自我!
优知文库
全部分类
  • 幼儿/小学教育>
  • 中学教育>
  • 高等教育>
  • 研究生考试>
  • 外语学习>
  • 资格/认证考试>
  • 论文>
  • IT计算机>
  • 法律/法学>
  • 建筑/环境>
  • 通信/电子>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 优知文库 > 资源分类 > PPT文档下载
    分享到微信 分享到微博 分享到QQ空间

    第7章资源在Windows编程中的应用.ppt

    • 资源ID:618876       资源大小:767KB        全文页数:76页
    • 资源格式: PPT        下载积分:9金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: QQ登录
    二维码
    扫码关注公众号登录
    下载资源需要9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,如果您不填写信息,系统将为您自动创建临时账号,适用于临时下载。
    如果您填写信息,用户名和密码都是您填写的【邮箱或者手机号】(系统自动生成),方便查询和重复下载。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    第7章资源在Windows编程中的应用.ppt

    第第7 7章章 资源在资源在WindowsWindows编程中的应用编程中的应用在在Windows应用程序中可以使用几种不同类型的资源应用程序中可以使用几种不同类型的资源加速键加速键位图位图对话框对话框和菜单等和菜单等这些资源可以使用这些资源可以使用VCVC提供的资源编辑器来实现创建和编辑提供的资源编辑器来实现创建和编辑资源的使用,方便了应用资源的使用,方便了应用程序与用户之间的交互程序与用户之间的交互菜单是菜单是Windows图形用户界面中图形用户界面中窗口的重要组成窗口的重要组成部分部分菜单可使用户直观菜单可使用户直观地了解并使用应用地了解并使用应用程序所提供的功能程序所提供的功能加速键可使加速键可使菜单的操作菜单的操作更灵活快捷更灵活快捷两种资源往往密不可分两种资源往往密不可分窗口主菜单条窗口主菜单条下拉式菜单框下拉式菜单框菜单项热键标识菜单项热键标识菜单项加速键标识菜单项加速键标识菜单项分隔线菜单项分隔线选中与否的标识选中与否的标识7.1菜单与加速键资源菜单与加速键资源 创建菜单过程分为定义和加载两个步骤创建菜单过程分为定义和加载两个步骤1.定义菜单定义菜单选选 项项说说 明明DISCARDABLE当当不不再再需需要要菜菜单单时时可可丢丢弃弃FIXED将将菜菜单单保保存存在在内内存存中中的的固固定定位位置置LOADONCALL需需要要时时加加载载菜菜单单MOVEABLE菜菜单单在在内内存存中中可可移移动动PRELOAD立立即即加加载载菜菜单单菜单项是菜单菜单项是菜单的组成部分。的组成部分。应用程序在资应用程序在资源描述文件中源描述文件中使用关键字使用关键字POPUP和和MENUITEM 定义菜单项定义菜单项菜单名菜单名MENU,MENU,选项选项 菜单项列表菜单项列表 菜单在资源描菜单在资源描述文件中定义述文件中定义用以标识菜用以标识菜单所具有的单所具有的载入特性载入特性菜单菜单定义定义结构结构菜单名菜单名MENU关键字关键字载载 入入 特特 性性 选选 项项菜单项菜单项7.1.1菜单的创建过程菜单的创建过程POPUP语句定义弹出式菜单,其形式为:语句定义弹出式菜单,其形式为:POPUP“POPUP“菜单项名菜单项名”,选项,选项;在菜单项名中加入符号在菜单项名中加入符号“&”可定义该菜单项的热键。例如:可定义该菜单项的热键。例如:POPUP“POPUP“编辑(编辑(&E&E)”;该菜单项使用该菜单项使用Alt+E键作为热键。键作为热键。菜单项的常用选项及其说明见下表。菜单项的常用选项及其说明见下表。选选 项项说说 明明MENUBARBREAK菜菜单单项项纵纵向向分分隔隔标标志志CHECKED显显示示选选中中标标志志INACTIVE禁禁止止一一个个菜菜单单项项GRAYED禁禁止止一一个个菜菜单单项项并并使使其其变变灰灰显显示示POPUP定义的弹出式菜单项还包含子菜单定义的弹出式菜单项还包含子菜单MENUITEM语句用于定义菜单项,其形式为:语句用于定义菜单项,其形式为:MENUITEM“MENUITEM“菜单项名菜单项名”菜单项标识(菜单项标识(IDID),选项,选项 每个菜单项的标识必须唯一每个菜单项的标识必须唯一应用程序通过此标识值确认每一个菜单项消息应用程序通过此标识值确认每一个菜单项消息标识值可为标识值可为0到到65535之间的任一整数之间的任一整数ID为菜单为菜单项标识项标识WM_COMMANDWM_COMMAND消息中消息中字参数字参数wParamwParam中包中包含选中菜单项的标识含选中菜单项的标识使用下面的语句可创建菜单使用下面的语句可创建菜单中的水平分隔符:中的水平分隔符:MENUITEM SEPARATOR;MENUITEM SEPARATOR;例例 在在“Menu”的窗口中创建一个的窗口中创建一个“文件文件”菜单。该菜单含有菜单。该菜单含有“新建新建”、“打开打开”、“关闭关闭”、“保存保存”、“另存为另存为”及及“退出退出”等菜单项。菜单项均使用热键;并等菜单项。菜单项均使用热键;并且且“退出退出”项与其他菜单项之间用分隔线分开。项与其他菜单项之间用分隔线分开。#include#include#include“Menu.h”#include“Menu.h”菜单定义菜单定义Menu MENU MOVEABLE Menu MENU MOVEABLE MenuMenu为窗口菜单的名称为窗口菜单的名称 POPUP“POPUP“文件文件(&F)”(&F)”定义定义“文件文件”弹出式菜单弹出式菜单 MENUITEMMENUITEM“新建新建(&N)”(&N)”,IDM_NEWIDM_NEW MENUITEMMENUITEM“打开打开(&O)”(&O)”,IDM_OPENIDM_OPEN MENUITEMMENUITEM“关闭关闭(&C)”(&C)”,IDM_CLOSEIDM_CLOSE MENUITEMMENUITEM“保存保存(&S)”(&S)”,IDM_SAVEIDM_SAVE MENUITEMMENUITEM“另存为另存为(&A)”(&A)”,IDM_SAVEASIDM_SAVEAS MENUITEM MENUITEM SEPARATOR SEPARATOR 分隔线分隔线 MENUITEMMENUITEM“退出退出(&X)”(&X)”,IDM_EXITIDM_EXIT Menu.h Menu.h 定义了菜单项标定义了菜单项标识所对应的数值:识所对应的数值:#define IDM_NEW 10#define IDM_NEW 10#define IDM_OPEN 11#define IDM_OPEN 11#define IDM_CLOSE 12#define IDM_CLOSE 12#define IDM_SAVE 13#define IDM_SAVE 13#define IDM_SAVEAS 14#define IDM_SAVEAS 14#define IDM_EXIT 15#define IDM_EXIT 152.加载菜单资源加载菜单资源WNDCLASS wndclass;WNDCLASS wndclass;wndclass.lpszMenuName=lpszMenuNamewndclass.lpszMenuName=lpszMenuName;1.在窗口类在窗口类中加载菜单中加载菜单应用程序需先调用函数应用程序需先调用函数LoadMemu加载菜单加载菜单 HMENU LoadMemu HMENU LoadMemu (hInstance,/hInstance,/当前程序的实例句柄当前程序的实例句柄 lpszMenuNamelpszMenuName/窗口菜单名窗口菜单名 );如:如:hmenu=LoadMenu(hlnstancehmenu=LoadMenu(hlnstance,Menu),Menu);hwnd=CreateWindow(hwnd=CreateWindow(,hmenuhmenu,,);,);2.在创建在创建窗口时窗口时加载菜单加载菜单3.动态加动态加载菜单载菜单应用程序获取菜单句柄后,可通过应用程序获取菜单句柄后,可通过SetMenu动态地加载菜单动态地加载菜单 BOLL SetMenuBOLL SetMenu(/HWND/HWND为窗口句柄,为窗口句柄,HMENUHMENU为菜单句柄为菜单句柄 HWND hwnd,HWND hwnd,HMENU hmenu HMENU hmenu);在应在应用程用程序中序中加载加载菜单菜单有三有三种方种方法法可在同一个应用可在同一个应用程序中实现多种程序中实现多种不同的菜单操作界面不同的菜单操作界面菜单菜单操作操作禁止或激活菜单项禁止或激活菜单项(指定该菜单项的初始状态)设置或取消选中标志设置或取消选中标志(“”)增加、删除或修改菜单项等操作增加、删除或修改菜单项等操作7.1.2菜单项的操作菜单项的操作创建菜单时,可以调用函数创建菜单时,可以调用函数EnableMenuItem改变其初始状态改变其初始状态DWORD EnableMenuItem(HMENU hmenu,UlNT wIDEnableItem,/被禁止或激活的菜单项标识被禁止或激活的菜单项标识 UINT dwEnable)/dwEnable为菜单项操作标识为菜单项操作标识MF_BYCOMMAND以以ID值标识菜单项值标识菜单项MF_ENABLED激活菜单项激活菜单项MF_BYPOSITION以位置标识菜单项以位置标识菜单项MF_GRAYED禁止菜单项并使其变灰显示禁止菜单项并使其变灰显示MF_DISABLED禁止菜单项禁止菜单项菜单项的菜单项的ID值值/在菜单中位置在菜单中位置例如,禁止弹出式菜单例如,禁止弹出式菜单“文件文件”中的中的“打开打开”项的形式如下:项的形式如下:EnableMenuItem(hmenuEnableMenuItem(hmenu,IDM_OPEN,MF_BYCOMMAND|MF_DISABLED),IDM_OPEN,MF_BYCOMMAND|MF_DISABLED);1.禁止或激活菜单项禁止或激活菜单项(1)在资源描述文件中设置菜单项的为在资源描述文件中设置菜单项的为CHECKED(2)调用函数调用函数CheckMenuItem设置或取消选中标志设置或取消选中标志DWORD CheckMenultemDWORD CheckMenultem(HMENU hmenHMENU hmen,UINT wIDCheckItemUINT wIDCheckItem,/,/设置或取消选中标志的菜单项标识设置或取消选中标志的菜单项标识UINT dwCheckUINT dwCheck)/操作标识操作标识据据dwCheckdwCheck的取值,可为的取值,可为该菜单项的该菜单项的IDID值或为该值或为该菜单项在菜单中位置菜单项在菜单中位置MF_BYCOMMANDMF_BYCOMMAND表明以表明以IDID值标识菜单项值标识菜单项MF_CHECKEDMF_CHECKED添加选中标志添加选中标志MF_BYPOSITIONMF_BYPOSITION表明以位置标识菜单项表明以位置标识菜单项MF_UNCHECKEDMF_UNCHECKED删除选中标志删除选中标志2.设置或取消选中设置或取消选中(“”)标志标志两种形式:两种形式:尾部增加尾部增加/菜单中插入菜单中插入(a)在菜单的尾部增加菜单项在菜单的尾部增加菜单项可调用函数可调用函数AppendMenu BOOL AppendMenuBOOL AppendMenu(HMENU hmenuHMENU hmenu,/新菜单项的类型标识或其他信息新菜单项的类型标识或其他信息UINT dwFlagsUINT dwFlags,UINT dwIDNewItemUINT dwIDNewItem,/,/菜单项的标识菜单项的标识菜单项内容菜单项内容,取决与取决与dwFlagsdwFlags参数参数LPCTSTR lpNewItemLPCTSTR lpNewItem)/)/1.通常是插入项的通常是插入项的ID值;值;2.若加入的是弹出式菜单,则为此菜单句柄若加入的是弹出式菜单,则为此菜单句柄(b)在菜单中插入菜单项在菜单中插入菜单项调用函数调用函数InsertMenu BOOL lnsertMenuBOOL lnsertMenu(HMENU hmenuHMENU hmenu,UINT wPositionUINT wPosition,/,/菜单项插入的位置菜单项插入的位置/新菜单项的信息及对新菜单项的信息及对wPositionwPosition的解释的解释UINT dwFlagUINT dwFlag,UINT dwIDNweltemUINT dwIDNweltem,/,/菜单项的菜单项的IDID标识标识/菜单项的内容菜单项的内容LPCTSTR lpNewltemLPCTSTR lpNewltem)dwFlagMF_BYCOMMANDMF_BYCOM

    注意事项

    本文(第7章资源在Windows编程中的应用.ppt)为本站会员(王**)主动上传,优知文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知优知文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 yzwku网站版权所有

    经营许可证编号:宁ICP备2022001189号-2

    本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。优知文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知优知文库网,我们立即给予删除!

    收起
    展开