- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
3.1 资 源 在第二章实例二中,用于子窗口背景的位图是程序每次运行时从硬盘文件zzr0801.bmp读到内存中使用的,该位图文件必须和可执行程序文件放在同一目录下。还有另外一种常用方法可实现同样的功能,即借助于资源的方法。 首先,编写ASCII码文本文件,例如取名为myTimeTable3.rc,扩展名必须为.rc,内容如下: 然后,在goCreateTableChildWnd过程中编写代码如下: 即可把zzr0801.bmp文件中的位图装入内存,然后,使用与第二章实例二一样的方式进行位图的显示操作。 这里使用了资源脚本文件进行资源的描述,而这里的资源就是指位图文件zzr0801.bmp,要求zzr0801.bmp要与源程序文件在同一目录下,源程序编译连接后生成的myTimeTable3.exe文件将包含该位图在内。于是,执行可执行文件时,不需要拷贝zzr0801.bmp文件到myTimeTable3.exe的目录下。 由此可见,资源通过资源脚本文件进行描述,可以是位图、图标、菜单、对话框、字符串、加速键等,资源在编译连接后成为可执行程序的一部分,随应用程序一起发布,一般是作为应用程序的只读数据段存储的。由于资源是连接到程序中的,对于程序的发行十分方便。 下面给出借助资源文件为应用程序添加图标和菜单的方法。 给应用程序添加图标的步骤如下: (1) 在资源文件myTimeTable3.rc中定义图标资源: // 定义图标资源 ID_ICON ICON “myTimeTable.ico” (2) 使用Visual Studio的图标编辑器或专门的图标编辑软件进行图标的创作,这里使用维新图标编辑器软件创作了图标文件myTimeTable.ico,如图3-1所示。 图3-1 myTimeTable.ico图标编辑 (3) 在头文件myTimeTable3.h中宏定义位图ID号: // 宏定义图标的ID号 #define ID_ICON 3 (4) 在主窗口过程文件mainWndProc.cpp中的goCreateMain过程中加入如下代码: 图3-2 智能手机上的显示效果 图3-3 智能手机上的快捷方式效果 图3-4 仿真器上的显示效果 添加应用程序图标代码用到了两个重要的过程,即LoadImage和SendMessage。LoadImage过程用于装入图标、光标、动画光标和位图,在前文的装入位图资源时也用到了它,其原型如下: HANDLE LoadImage(HINSTANCE hInst, LPCTSTR lpszName, UINT uType, int cyDesired, int cyDesired, UINT fuLoad); SendMessage过程向指定的窗口发送消息,等待那个窗口处理完该消息后,该过程才返回值。其原型如下: 对于消息WM_GETICON来说,返回值为应用程序的图标,其参数wParam取值为ICON_BIG或ICON_SMALL,即指向程序的大图标或小图标,lParam参数没有使用。 对于消息WM_SETICON来说,返回值为应用程序原来的图标,其参数wParam取值为ICON_BIG或ICON_SMALL,即指定程序使用大图标还是小图标,lParam参数为新图标的句柄。因此,程序中调用SendMessage过程设置应用程序图标时,代码为 SendMessage(hWnd,WM_SETICON,ICON_BIG,(LPARAM)hIcon); 给应用程序添加菜单的步骤如下: (1) 在资源文件myTimeTable3.rc中定义菜单,如下: 上面给出了本章实例的完整的资源文件,在定义了图标和位图之后,就是菜单资源的定义了。MENU为关键字,指定该资源为菜单(ICON和BITMAP也是资源中的关键字)。菜单的ID号ID_MENU在头文件myTimeTable3.h中宏定义了,DISCARDABLE关键字表示菜单资源不使用时从内存中移出。菜单项由BEGIN和END关键字包括在内,资源中的注释采用“//”。 POPUP关键字限定的为弹出菜单项,MENUITEM关键字限定的为弹出菜单项中的子菜单项,MENUITEM SEPARATOR为分隔菜单项的横线,每个子菜单项都有一个ID号,例如, MENUITEM “教学计划” IDM_TEACHPLAN , CHECKED其中,IDM_TEACHPLAN为该菜单的ID号,后面可附加菜单的属性,例如CHECKED,表示菜单名前有勾选标志。 该菜单资源创建的菜单
您可能关注的文档
- 新VisualBasic程序设计(第二版) 丁爱萍 第7章 数组.ppt
- 新VisualBasic程序设计(第二版) 丁爱萍 第8章 过程.ppt
- 新VisualBasic程序设计(第二版) 丁爱萍 第9章 用户定义与枚举类型.ppt
- 新VisualBasic程序设计(第二版) 丁爱萍 第10章 对话框设计.ppt
- 新VisualBasic程序设计(第二版) 丁爱萍 第11章 文件、驱动器和文件夹.ppt
- 新VisualBasic程序设计(第二版) 丁爱萍 第12章 菜单和工具栏设计.ppt
- 新VisualBasic程序设计(第二版) 丁爱萍 第13章 图形与图像设计.ppt
- 新VisualBasic程序设计(第二版) 丁爱萍 第14章 数据库访问技术.ppt
- 新VisualBasic程序设计(第二版) 丁爱萍 封面.ppt
- 新VisualBasic实用教程 薛亮 第1章.ppt
- 新Windows CE应用程序设计(张勇)ZXM20120520 第4章.ppt
- 新Windows CE应用程序设计(张勇)ZXM20120520 第5章.ppt
- 新Windows CE应用程序设计(张勇)ZXM20120520 第6章.ppt
- 新Windows CE应用程序设计(张勇)ZXM20120520 第7章.ppt
- 新Windows CE应用程序设计(张勇)ZXM20120520 第8章.ppt
- 新Windows CE应用程序设计(张勇)ZXM20120520 封面及目录.ppt
- 新Windows Server 2003 组网实训教程高职封面及目录.ppt
- 新Windows Server 2003系统管理(第二版) 教学课件 978 7 302 15091 6 ch01.ppt
- 新Windows Server 2003系统管理(第二版) 教学课件 978 7 302 15091 6 ch02.ppt
- 新Windows Server 2003系统管理(第二版) 教学课件 978 7 302 15091 6 ch03.ppt
文档评论(0)