第五章《资源的应用》ppt课件

上传人:我*** 文档编号:148628372 上传时间:2020-10-21 格式:PPT 页数:30 大小:239KB
返回 下载 相关 举报
第五章《资源的应用》ppt课件_第1页
第1页 / 共30页
第五章《资源的应用》ppt课件_第2页
第2页 / 共30页
第五章《资源的应用》ppt课件_第3页
第3页 / 共30页
第五章《资源的应用》ppt课件_第4页
第4页 / 共30页
第五章《资源的应用》ppt课件_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《第五章《资源的应用》ppt课件》由会员分享,可在线阅读,更多相关《第五章《资源的应用》ppt课件(30页珍藏版)》请在金锄头文库上搜索。

1、德州学院 计算机系,1,Visual C+ 与面向对象程序设计,第5章 资源的应用 德州学院 计算机系 主讲教师 韩金姝,德州学院 计算机系,2,本章主要内容,菜单与加速键资源 位图资源及其应用 对话框资源及其应用,德州学院 计算机系,3,菜单与加速键资源,资源 是Windows应用程序用户界面的重要组成部分,极大的方便了应用程序与用户之间的交互。常用资源如:加速键、位图、对话框、菜单。 资源的两种编辑方法 1.资源可使用资源编辑器来创建和编辑 2.资源也可使用文本编辑器(如记事本)编辑,德州学院 计算机系,4,菜单与加速键资源,菜单与加速键部分的主要内容 菜单的创建过程 操作菜单项 菜单资源

2、应用实例 加速键资源(自学) 讲授方法 资源的两种编辑方法对比讲授; API和MFC对比讲授,德州学院 计算机系,5,菜单的创建过程,菜单的组成 窗口主菜单条、下拉式菜单框、菜单项热键标识、菜单项加速键标识和菜单分割线、选中标识等 菜单的创建:分为定义和加载两个步骤 定义菜单:在.rc文件中定义 New/File/text file 写入定义内容 另存为.rc,德州学院 计算机系,6,菜单的创建过程,定义内容包括: 1.#include 2.#include “Menu.h” Menu.h文件中定义了菜单项标识对应的数值 ,如: #define IDM_CUT 20 取值范围:0-65535,

3、是用户自定义的,可选用。,德州学院 计算机系,7,菜单的创建过程,3.定义格式: 菜单名 .MENU关键字 .载入特性选项表(参见表5-1) .菜单项列表 例:MyMenu MENU MOVEABLE POPUP “编辑” MENUITEM “剪切”,IDM_CUT MENUITEM “复制”,IDM_COPY . MENUITEM SEPARATOR ,德州学院 计算机系,8,菜单的创建过程,菜单的加载 方法2:在创建窗口时加载。实现语句为: HMENU hmenu hmenu=LoadMenu(hInstance,”MyMenu”) Hwnd=CreateWindow(,.,hmenu,.

4、),德州学院 计算机系,9,菜单的创建过程,菜单的加载 方法3:动态加载菜单(前提是在方法2的基础上)。可在同一程序中实现多种不同的菜单操作界面。实现过程如下: 定义菜单句柄 第一次采用LoadMenu+CreateWindow 之后是LoadMenu+SetMenu,德州学院 计算机系,10,菜单的创建过程,API创建菜单小结: Step1: .rc文件。菜单名、菜单特性、菜单项和ID标识。 Step2: .h文件。菜单项ID所对应的数值。 Step3: .cpp文件。加载菜单的三种方式。 注意: 加载时使用的是菜单名,而不是.rc文件名。 .rc和.cpp都要包含.h文件,德州学院 计算机

5、系,11,菜单的创建过程,例51(P78):创建一个菜单。 其中有三个菜单项,分别为“文件”、“计算”和“帮助”,各菜单项又有子菜单选项。,程序演示1,德州学院 计算机系,12,菜单的创建过程,应用资源编辑器创建菜单,德州学院 计算机系,13,操作菜单项,HOME,1.API创建菜单,应用程序可调用相关函数访问菜单项的属性或编辑菜单项,也可实现对菜单项的动态控制.参加教材P73-76. 2.资源编辑器创建菜单,可以直接采用所见即所得方式,进行修改菜单名称及ID值、变换菜单项位置、添加/删除菜单等操作 3.练习:应用方法2创建并操作菜单,德州学院 计算机系,14,位图资源及其应用,位图是一种数字

6、化的图形表示形式 与设备相关的位图DDB或GDI位图 DDB位图对象有一个与之关联的WINDOWS数据结构,它在WINDOWS GDI模块内进行维护。程序可以获得位图数据的副本,但是其中位的排列取决于显示硬件。 与设备无关的位图DIB 可在不同机器或系统中显示位图所固有的图像。是一种外部的位图格式,经常存储在以BMP为后缀的位图文件中,还支持图像数据的压缩。,德州学院 计算机系,15,位图资源及其应用,操作位图必须要有: 位图、内存设备描述表、设备描述表 内存设备描述表位设置的目的 因为位图数据量大,为了提高显示速度,位图操作在内存中进行。内存设备描述表的相关操作为: HDC hdcmen h

7、dcmen=CreateCompatibleDC(hDC) SelectObject(hdcmen,hBm)(将位图选入内存设备境) 操作位图 DeleteDC(hdcmen),德州学院 计算机系,16,位图资源及其应用,位图的操作过程 定义:HBITMAP hBm 加载或创建: hBm=LoadBitmap(hInstance,位图名 ) 选入内存设备环境: SelectObject(hdcmen,hBm) 输出:BitBlt( ),将位图从内存设备环境复制到设备环境,德州学院 计算机系,17,位图资源及其应用,说明: 应用程序通过响应消息WM_CREATE完成加载或创建位图操作。 位图的有

8、关信息可通过调用GetObject( )获取。该函数将位图的信息写入BITMAP结构。,HOME,德州学院 计算机系,18,位图资源及其应用,例52(P84):位图操作 在一个窗口中央加载一个任意位图,位图尺寸为窗口面积的1/4,当单击鼠标左键或键盘上的向上箭头时,位图向上移动,当移动到窗口的上边界时,窗口显示“已经达到顶部,不能再向上移动了”字样。当单击鼠标右键或键盘向下箭头时,位图下移,当到达窗口下边界时,屏幕显示提示文字。,HOME,程序演示2,德州学院 计算机系,19,位图资源及其应用,基于MFC的DDB位图操作 新建基于对话框的工程 位图资源.rc,Insert/bitmap/imp

9、ort 显示位图:在OnPaint()中 设备描述表、位图句柄、内存设备描述表、位图选如内存设备描述表、由内存DC到屏幕DC 修改StretchBlt( )的尺寸参数,可实现位图显示尺寸的缩放。,程序演示3,HOME,德州学院 计算机系,20,对话框资源及其应用,对话框是一个弹出式窗口。包含了控件:按钮、滚动条、编辑框、列表框。 功能:发送消息如警告、提示框消息;接收消息如用户输入的消息和提供消息。 对话框消息的处理在独立的对话框函数内进行。,德州学院 计算机系,21,对话框资源及其应用,对话框的形式 模式对话框:不允许用户在关闭对话框之前切换到应用程序的其他窗口。 非模式对话框:允许用户在该

10、对话框与应用程序其他窗口之间的切换。非模式对话框从WinMain函数的消息循环中接收输入。,德州学院 计算机系,22,对话框资源及其应用,模式对话框的编程方法 Step1:定义对话框资源.rc Step2:显示对话框DialogBox( ) Step3:构造对话框处理函数。具有与主窗口相似的参数。主要处理WM_INITDIALOG/ WM_COMMAND,通过LOWORD(wParam)确定产生交互请求的控件并转入相应处理过程 Step4:关闭对话框。EndDialog( ),德州学院 计算机系,23,对话框资源及其应用,例53(P92):模式对话框应用实例 程序含有标题栏、两个下拉菜单。单击

11、菜单,弹出对话框,此时其他操作都是无效的。 演示程序程序4是基于API编写的,演示程序5是基于MFC编写的,两者功能相似。程序中同时还涉及了菜单的创建和响应,程序演示4,程序演示5,德州学院 计算机系,24,对话框资源及其应用,基于API的非模式对话框编程 与模式对话框编程类似 Step1:对话框定义(.rc):STYLE WS_POPUP|WS_CAPTION|WS_VISIBLE Step2:对话框创建(.cpp) hdlg=CreateDialog(hInstance,About,hWnd,(DLGPROC)DlgProc); Step3:消息处理:非模式对话框允许应用程序向其他窗口发送

12、信息,因此在WinMain函数消息循环中调用IsDialogMessage判断消息是否发往非模式对话框 Step4:关闭对话框:DestroyWindow( ),DialogBox( ),EndDialog( ),德州学院 计算机系,25,对话框资源及其应用,含有非模式对话框程序的消息循环 while(GetMessage( ,德州学院 计算机系,26,对话框资源及其应用,例54(P97):非模式对话框应用 程序含有标题栏、两个下拉菜单。单击菜单,弹出保存对话框,此时其他操作都是无效的。但当弹出关于对话框(属于非模式对话框)时,其他窗口仍能进行操作。,程序演示6,德州学院 计算机系,27,对话

13、框资源及其应用,基于MFC的非模式对话框编程 Step1:新建工程,添加对话框资源,并创建类 Step2:添加菜单,建立消息映射 Step3:添加代码,包含头文件。(例:欢迎),程序演示7,德州学院 计算机系,28,对话框资源及其应用,通用对话框资源 程序员除使用自定义的对话框外,还可以直接调用Windows系统提供的通用对话框模板生成对话框资源。如:OPEN, SAVE, SAVE AS, PRINT. 这些对话框模板在系统提供的COMMDLG.h文件中,德州学院 计算机系,29,对话框资源及其应用,通用对话框模板的创建 Step1:填充对话框模板结构 1.OPENFILENAME, CHOOSECOLOR, CHOOSEFONT, PRINTDLG, PAGESETUPDLG, FINDREPLACE,具体参见MSDN 2.钩子函数:该函数的功能与对话框窗口处理函数相同。 Step2:调用函数显示对话框。不同功能对话框,对应的显示函数也不同。表5-11,程序演示8,德州学院 计算机系,30,本章小结,习题五:5.2 是综合运用前5章编程技巧的程序,主讲教师给出了程序设计思想,重点讲授动态加载菜单和图形绘制,并给出了程序实现框架,绘制矩形后可以通过键盘左右方向键,使得所绘制的矩形缩放。请同学们进一步填充完善该程序。,程序演示9,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号