ImageVerifierCode 换一换
格式:PPT , 页数:23 ,大小:60.50KB ,
资源ID:2123383      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/2123383.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(第章多文档界面程序.ppt)为本站会员(b****2)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

第章多文档界面程序.ppt

1、Visual C+与面向对象程序设计教程与面向对象程序设计教程第第16章章 多文档界面程序多文档界面程序 计算机教学实验中心计算机教学实验中心计算机教学实验中心计算机教学实验中心西安交通大学西安交通大学西安交通大学西安交通大学教学目标教学目标n多文档界面(多文档界面(MDI)程序的构造和编程方法)程序的构造和编程方法 学习要求学习要求n理解多文档界面(理解多文档界面(MDI)程序的构造、主要类)程序的构造、主要类n掌握多文档界面(掌握多文档界面(MDI)编程方法)编程方法 授授 课课 内内 容容n16.1 MDI应用程序应用程序 n16.2 滚动视图滚动视图 n调试技术调试技术 n程序设计举例

2、程序设计举例 16.1 MDI应用程序应用程序nMDI应用程序必须有一个应用程序必须有一个CMDIFrameWnd或其派或其派生类的对象,该窗口称作生类的对象,该窗口称作MDI框架窗口框架窗口 nMDI子窗口是子窗口是CMDIChildWnd或其派生类对象或其派生类对象 AppWizard为为MDI程序框架创建了以下类程序框架创建了以下类 类类 说说 明明CAboutDlg“关于关于”对话框对话框CChildFrame子框架窗口用于容纳视图子框架窗口用于容纳视图CMyApp应用程序类应用程序类CMyDoc文档类文档类CMyView视图类视图类CMainFrame框架窗口框架窗口(用来容纳子窗用

3、来容纳子窗口),是口),是MDI应用程序的主窗口应用程序的主窗口 例例16-1 绘图程序绘图程序 n用户可以鼠标用户可以鼠标“拖曳拖曳”方式在视图中画直线段,方式在视图中画直线段,线的粗细和颜色可调。线的粗细和颜色可调。n采用采用MDI结构,可同时打开多个子窗口作图结构,可同时打开多个子窗口作图n所作图形可以文件形式保存在磁盘上所作图形可以文件形式保存在磁盘上 文件扩展名(程序生成时设定)文件扩展名(程序生成时设定)n用用AppWizard生生成成一一个个MDI程程序序框框架架,在在第第4步步打打开开Advanced Options(高高级级选选项项)对对话话框框,在在Document Tem

4、plate Strings(文文 档档 模模 板板 字字 符符 串串)选选 项项 卡卡 中中 将将 File extension(文文件件扩扩展展名名)设设置置为为“pic”,即该程序的图形文件名后缀为即该程序的图形文件名后缀为“.pic”。主菜单设置主菜单设置IDCaption命令消息响应函数命令消息响应函数=ID_COLOR“颜色颜色”OnColor()()ID_WIDTH1“宽度宽度1”OnWidth1()()ID_WIDTH3“宽度宽度3”OnWidth3()()ID_WIDTH5“宽度宽度5”OnWidth5()()ID_WIDTH7“宽度宽度7”OnWidth7()()描述线段的类

5、描述线段的类(数据成员)(数据成员)class CLine:public CObject public:CPointm_pointFrom;/线段起点线段起点CPointm_pointTo;/线段终点线段终点COLORREF m_colorLine;/线段颜色线段颜色intm_nWidth;/线段宽度线段宽度 描述线段的类描述线段的类(成员函数)(成员函数)CLine()CLine(POINT from,POINT to,COLORREF color,int width);CLine&operator=(CLine&line);void Serialize(CArchive&ar);void

6、DrawLine(CDC*pDC);virtual CLine()DECLARE_SERIAL(CLine);文档类文档类n数据定义中,添加如下数据成员数据定义中,添加如下数据成员 public:CLine m_lineListMAX_LINES;intm_nCount;n初始化初始化void CMyDoc:DeleteContents()m_nCount=0;文档类文档类n序列化序列化void CMyDoc:Serialize(CArchive&ar)if(ar.IsStoring()ar m_nCount;for(int i=0;im_nCount;i+)m_lineListi.Seria

7、lize(ar);视图类视图类n数据定义(不需序列化的数据定义在此)数据定义(不需序列化的数据定义在此)public:COLORREF m_colorCurr;/当前颜色当前颜色intm_nCurrWidth;/当前线宽当前线宽BOOLm_bCaptured;/是否按下鼠标左键是否按下鼠标左键CPointm_pointFrom;/当前线始端当前线始端CPointm_pointTo;/当前线终端当前线终端 n初始化初始化视图类视图类n显示图形显示图形void CMyView:OnDraw(CDC*pDC)CMyDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);f

8、or(int i=0;im_nCount;i+)pDoc-m_lineListi.DrawLine(pDC);视图类视图类l数据修改(鼠标消息)数据修改(鼠标消息)lDownlMovelUpUpdateAllViews(this);/MDI特殊用法l菜单菜单l菜单界面更新菜单界面更新16.2 滚动视图滚动视图 n滚动视图类滚动视图类CScrollViewn重要方法重要方法 lSetScrollSizes()l坐标转换调试技术调试技术 n使用使用AppWizard建立建立MDI程序框架程序框架 程序设计举例程序设计举例 n例例16-3 改写例改写例16-1的绘图程序,使之使用滚动视图,同的绘图程

9、序,使之使用滚动视图,同时选用合适的映射模式,使程序具有时选用合适的映射模式,使程序具有“所见即所所见即所得得”的打印风格的打印风格 主要修改(一)主要修改(一)void CMy1603View:OnInitialUpdate()CScrollView:OnInitialUpdate();SetScrollSizes(MM_TWIPS,CSize(11520,15120);void CMy1603View:OnPrepareDC(CDC*pDC,CPrintInfo*pInfo)pDC-SetMapMode(MM_TWIPS);CScrollView:OnPrepareDC(pDC,pInfo

10、);主要修改(二)主要修改(二)n坐标转换坐标转换void CMy1603View:OnLButtonDown(UINT nFlags,CPoint point)CScrollView:OnLButtonDown(nFlags,point);CClientDC dc(this);OnPrepareDC(&dc);dc.DPtoLP(&point);/物理坐标转换为逻辑坐标物理坐标转换为逻辑坐标m_pointFrom=m_pointTo=point;SetCapture();m_bCaptured=TRUE;上机练习题上机练习题n完完善善例例16-3的的绘绘图图程程序序,包包括括改改善善界界面面(如如设设计计专专用用图图标标,完完善善菜菜单单等等)、加加上上绘绘制制其其他他图图形形的的功功能等。能等。n将吹泡泡程序的结构改为将吹泡泡程序的结构改为MDI,并使用滚动视图。,并使用滚动视图。结结束束语语n学好程序设计语言的唯一途径是学好程序设计语言的唯一途径是 上机练习。上机练习。n你的编程能力与你在计算机上投入的时间成你的编程能力与你在计算机上投入的时间成 正比。正比。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1