第5讲文档视图结构
第五章PowerPoint电子演示文稿-60页精选文档
计算机基础强化
12
5.2.2 PPT的基本操作
启动方法 –“开始”菜单启动 –桌面上的快捷方式启动 –已有的演示文稿启动
退出方法 –打开【文件】--【退出】命令 –双击PowerPoint标题栏左上角的控制菜单 图标 –单击标题栏右上角的“关闭”按钮
计算机基础强化
13
1. PPT新建演示文稿的基本操作
计算机基础强化
21
(3)插入另一演示文稿中的幻灯片 (4)复制和移动幻灯片 (5)隐藏和取消幻灯片
• 单击不同的设计模板并在预 览窗口中进行预览,直到获 得最满意的模板为止。
计算机基础强化
15
(3)用“空演示文稿” 创建
单击“文件”—”新建”,打 开“新建演示文稿”任务窗格, 选择“空演示文稿”选项,这 时会弹出“幻灯片版式”任务 窗格。
计算机基础强化
16
2. PPT的视图
• 普通视图 包含大纲窗格、幻灯片窗格和备注窗格。
• 幻灯片浏览视图 可以在窗口中同时看到演示文稿中的多张幻灯
片。 • 幻灯片放映视图
即演示文稿的计算机全屏放映模式。
视图切换有两种方式: 一种是:通过“视图切换”工具栏的三个按钮实现。 另一种是:通过“视图”菜单。
计算机基础强化
17
3. 幻灯片元素的操作
(1) 文字操作 ① 占位符文本 ② 文本框文本 ③ 自选图形中添加文本 ④ 艺术字文本
图形、图像、声音以及视频剪辑等多媒体元素于
一体的优秀软件工具。
备注窗格
视图切 换按钮
绘图工具栏
计算机基础强化
状态栏
8
PPT的功能是用于组织、创建5类文稿: ①、电子演示文稿 ②、投影幻片灯 ③、35毫米幻灯片 ④、演讲者备注、观众讲义和文件大纲 ⑤、web演示文稿
Word快速了解五种常见视图作用
Word快速了解五种常见视图作用
展开全文
1.页面视图
1.“页面视图”可以显示Word文档的打印结果外观,主要包括页眉、页脚、图形对象、分栏设置、页面边距等元素,是最接近打印结果的页面视图,如图1所示。
图1 页面视图
2.阅读版式视图
“阅读版式视图”以图书的分栏样式显示Word文档,“文件”按钮、功能区等窗口元素被隐藏起来。
在阅读版式视图中,用户还可以单击“工具”按钮选择各种阅读工具,如图2所示。
图2 阅读版式视图
3.Web版式视图
“Web版式视图”以网页的形式显示Word文档,Web版式视图适用于发送电子邮件和创建网页,如图3所示。
图3 Web版式视图
4.大纲视图
“大纲视图”主要用于设置Word文档的设置和显示标题的层级结构,并可以方便地折叠和展开各种层级的文档。
大纲视图广泛用于
Word长文档的快速浏览和设置中,如图4所示。
图4 大纲视图
5.草稿视图
“草稿视图”取消了页面边距、分栏、页眉页脚和图片等元素,仅显示标题和正文,是最节省计算机系统硬件资源的视图方式。
当然现在计算机系统的硬件配置都比较高,基本上不存在由于硬件配置偏低而使Word运行遇到障碍的问题,如图5所示。
图5 草稿视图。
《文档视图结构》课件
办公自动化软件中的文档视图通常支 持多种视图模式,如页面视图、大纲 视图和阅读模式等,以满足不同用户 的需求。
通过文档视图,用户可以方便地查看 、编辑和保存文档内容,提高工作效 率。
文档视图在网页设计中的应用
在网页设计中,文档视图主要用于展示网页内容和结构。
通过文档视图,网页设计师可以方便地查看和编辑网页元素,如文本、图片、视频 等。
常见的网页设计软件如Adobe Dreamweaver、Sublime Text等都提供了文档视图 功能,方便设计师进行网页设计和开发。
文档视图在软件开发中的应用
在软件开发中,文档视图主要用 于描述和展示软件的结构和功能
。
通过文档视图,开发人员可以方 便地查看和编辑软件文档,如需 求规格说明书、设计文档、用户
文档视图的发展挑战
技术创新和人才培养
随着文档视图的发展,需要不断进行技术创新和人才培养,以满 足用户需求和提高市场竞争力。
数据安全和隐私保护
随着互联网技术的发展,数据安全和隐私保护成为越来越重要的问 题,需要加强数据安全和隐私保护措施。
跨平台兼容性和互操作性
随着文档处理软件的发展,需要实现跨平台兼容性和互操作性,以 满足用户在不同平台上的需求。
灵活性
文档视图应支持多种文档格式 和类型,满足不同用户的需求 。
可扩展性
文档视图应具备良好的可扩展 性,方便添加新功能和改进现 有功能。
性能优化
文档视图应注重性能优化,确 保快速加载和渲染文档内容,
提高用户体验。
文档视图的实现技术
基于Web的技术
使用HTML、CSS和JavaScript等技术构建文档视图,支持跨平台 和浏览器访问。
文档解析与渲染引擎
第六章 文档视图结构精品文档15页
开。这将使模块划分更加合理、模块独立性更强,同 时也简化了数据操作和数据显示、用户界面工作。文 档只负责数据管理,不涉及用户界面;视图只负责数 据输出与用户界面的交互,可以不考虑应用程序的数 据是如何组织的,甚至当文档中的数据结构发生变化 时也不必改动视图的代码。
13Thank you• 前面利用MFC AppWizard创建了SDI(单文档界面
)应用程序。SDI应用程序一般由4个类组成:应用程 序类CWinApp、窗口框架类CFrameWnd、视图 类CView、文档类CDocument。
• 应用程序类CWinApp负责一个且唯一的一个应用程
序对象的创建、初始化、运行和退出清理过程。
上述代码中创建一个CSingleDocTemplate类对象, CSingleDocTemplate类对象调用主框架窗口类 CFrameWnd构造函数创建窗口,主框架窗口创建 CSDExampleDoc文档对象和CSDExampleView视图对象。
8
6.3创建具有切分窗口的应用程序 • MFC提供的CSplitterWnd类来切分窗口,即把一个窗口分割成多个
第六章 文档/视图结构
• 创建单文档工程 • 文档/视图与窗口框架间的关系 • 创建具有切分窗口的应用程序 • 切换窗口 • 具有打印功能的文档/视图应用程序 • 实训
1
• 在文档/视图结构里,文档是一个应用程序数据基 本元素的集合,它构成应用程序所使用的数据单元 ;另外还提供了管理和维护数据的手段。
窗口使用。CSplitterWnd看上去像是一种特殊的框架窗口,每个窗 口都被相同的或者不同的视图所填充。当窗口被切分后用户可以使用鼠 标移动切分条来调整窗口的相对尺寸。
文档结构
2016/5/30文档视图结构文档视图结构是MFC中结构最为复杂,体系最为庞大,最具有代表性的部分。
MFC之所以被称为应用程序框架,原因之一就是文档视图结构将应用程序数据管理与数据显示分离,允许用户对两部分代码进行独立编写。
一、MFC支持两种文档视图应用程序,1、单文档界面(SDI):只有一个窗口,即用户在同一时刻只能操作一个文档。
(记事本)多文档界面(MDI):可以同时操作多个文档。
(WORD)2、MFC隐藏了两种用户界面模型的许多差别,通过应用程序向导创建两种文档的过程完全一样,但SDI文档不生成类CChildFrame,SDI主框架类CMainFrame的基类是CFrameWnd,而MDI的类CMainFrame的基类是CMDIFrameWnd。
二、文档、视图、框架、文档模板文档视图结构由四个要素组成,文档,视图,框架和文档模板。
1、文档:用于管理应用程序的数据——应用程序数据的抽象表示1.1任务:1)对数据进行管理与维护,数据保存在文档类的成员变量中。
2)处理命令消息,如菜单,工具栏,加速键的WM_COMMAND通知消息(但不能处理其他WINDOWS 消息)(WINDOWS消息和控件消息只能被窗口和视图处理)。
类CDocument是所有文档类的基类,提供文档类所需要的,最基本的功能实现,为文档对象和其他对象的交互提供基本框架。
1.2类CDocument提供的三种方法:1)构造方法:创建CDocument类对象,函数声明:CDocument()。
2)操作方法(12种方法):AddView,为文档添加视图;GetTitle,返回文档标题;RemoveView,为文档移除视图;SetTitle,为文档设置标题;SetPathName,设置文档数据文件的路径。
3)虚拟方法(12种):使应用程序能够对其重写一=以获取类CDocument派生类方法。
DeleteContents,删除文档数据;OnChangeViewList,检查视图是否有增加或减少;OnNewDocument,创建文档;OnOpenDocument,打开文档;OnSaveDocument,保存文档。
文档视图结构
文档/视图结构一、文档/视图的概念●在MFC中,文档类负责管理数据,提供保存和加载数据的功能。
视图类负责数据的显示,以及给用户提供对数据的编辑和修改功能。
●MFC给我们提供Document/View结构,将一个应用程序所需要的“数据处理与显示”的函数空壳都设计好了,这些函数都是虚函数,我们可以在派生类中重写这些函数。
有关文件读写的操作在CDocument的Serialize函数中进行,有关数据和图形显示的操作在CView的OnDraw函数中进行。
我们在其派生类中,只需要去关注Serialize和OnDraw 函数就可以了,其它的细节我们不需要去理会,程序就可以良好地运行。
●当我们按下“打开文件”菜单项时,Application Framework会激活打开文件对话框,让你指定文件名,然后自动调用CMiniCADDoc::Serialize读取文件。
Application Framework 还会调用CMiniCADView::OnDraw,传递一个显示DC,让你重新绘制窗口内容。
●MFC给我们提供Document/View结构,是希望我们将精力放在数据结构的设计和数据显示的操作上,而不要把时间和精力花费在对象与对象之间、模块与模块之间的通信上。
●一个文档对象可以和多个视图类对象相关联,而一个视图类对象只能和一个文档对象相关联。
●MFC对“文档”的设计思想是:一个类中的所有成员变量,都应该能够保存到一个文件中去,反之,也应该能从一个文件中读出来,加载到该类相应的成员变量中去。
MFC 对此的实现机制就是文档/视图的串行化(Serialize)。
二、串行化基础知识:使用CArchive类对存储在内存中的变量进行存取。
打开“006菜单工具栏状态栏”一章中的项目“2MiniCAD_图形保持”,添加菜单项“写文件”和“读文件”,对应代码如下:void CMiniCADDoc::OnFileWrite(){CFile file("C:\\1.dat", CFile::modeCreate | CFile::modeWrite);CArchive ar(&file, CArchive::store); //将CFile类和CArchive类关联起来,保存//ar.IsStoring();int i = 4;char ch = 'a';float f = 1.3f;CString str("ITJob");ar << i << ch << f << str;AfxMessageBox("成功写入数据到文件C:\\1.dat");}以二进制形式查看C:\1.dat文件的内容,如下void CMiniCADDoc::OnFileRead(){CFile file("C:\\1.dat", CFile::modeRead);CArchive ar(&file, CArchive::load); //将CFile类和CArchive类关联起来int i;char ch;float f;CString str;CString strResult;ar >> i >> ch >> f >> str;strResult.Format("从文件C:\\1.dat成功读取到数据:%d, %c, %f, %s", i, ch, f, str);AfxMessageBox(strResult);}上述代码说明,CArchive类具有对文件的读写功能,可以通过其流操作符<<将变量存入文件,通过>>将文件中的数据读取到变量中来。
文档视结构
GetScollStyle 为该分割器窗口共享的滚动条指定新的滚动
分割器视窗的实现
单文档应用程序和多文档应用程序的分割器窗口实现技 术基本相同,只是基于父框架窗口类不一样而已。单文档应 用程序嵌入一个CSplitterWnd成员变量是基于父框架窗口类 CMainFrame类,CMainFrame类是CFrameWnd的派生类;而多 文档应用程序是基于CMDIChildWnd的派生类,用AppWizard 生成的多文档应用程序嵌入一个CSplitterWnd成员变量是基于 CChildFrame类,CChildFrame类是CMDIChildWnd的派生类; 当然也可以基于用ClassWizard 生成的其他CMDIChildWnd的 派生类。
Visual C ++ 类CSplitterWnd 简介
类CSplitterWnd 是 MFC类库中实现分割器窗口的基类,根据需要可 以从该类派生自己的分割器窗口类。分割器窗口是含有多个窗格的窗口, 每个窗格通常是应用程序特定的由 CView派生类的对象,也可以是具有 适当子窗口 ID 的任何 CWnd对象。类CSplitterWnd是类CWnd的派生类, 因此,类CSplitterWnd除了继承类CWnd方法外,还有以下方法: 构造函数: CSplitterWnd 该函数构造一个类CSplitterWnd的对象 Create 该 函 数 创 建 动 态 分 割 器 窗 口 并 将 此 窗 口 连 接 给 类 CSplitterWnd的对象 CreateStatic 该 函 数 创 建 静 态 分 割 器 窗 口 并 将 此 窗 口 连 接 给 类 CSplitterWnd的对象 CreateView 该函数在分割器窗口中创建一个窗格
有文档的应用程序框架。
计算机基础第5讲 WORD基本操作(1)
50
首字下沉
“插入”选项卡“文本”任务组“首字下沉” 按钮
51
目录
“引用”选项卡 “目录”任务组 “目录”按钮
目录
选择创建的目录 “目录”按钮 “插入目录”选 项
目录
单击“选项”按钮将打开“目录选项”对话框,设置 采用目录形式的样式内容。
行首 下一行 上一行 段尾 段首
26
键盘选定文本
Shift+PageDown Shift+PageUp Ctrl+shift+Home
Ctrl+shift+End Alt+ctrl+Shift+PageDown Ctrl+A
下一屏 上一屏 文档开始处
文档结尾处 窗口结尾 包含整篇文档
27
删除文本 :
查找功能只用于在文本中定位,而对文 本不做任何修改。利用Word 2010的查找命令 可在文档中快速找到所需要的内容、带特殊 格式的文本及特殊字符。查找有两种方式: 常规查找和高级查找。
34
35
36
37
38
公式的输入
“插入”选项卡的“符号”任务组中的“公式 ”命令
39
字符格式设置
使用“字体”任务组
2.预览打印文档及打印
单击“文件”标签,在选项卡中单击“打印”选 项,在最右侧的窗格中将能够预览打印效果 (Ctrl+P)
边框和底纹
1.添加边框 “页面布局”选项卡“页面背景”任务组“页面边框” 按钮。
2.添加装饰线
边框和底纹
3.为文字添加边框
4.为文字添加底纹
分栏
“页面布局”选项卡“页面设置”任务组“分栏” 按钮
第二章 Word文档导航的好帮手:文档结构图
第二章Word文档导航的好帮手:文档结构图
2.1 定位标题位置原来如此简单
一、知识导入
打开一个文档,这个文档里面带有一个目录,一般情况下按着Ctrl键单击鼠标左键可以快速地定位到我需要的内容处。
这目录特点都是从原始位置开始然后定位到目标去,然后再返回到原始位置,然后再找目标位置。
有没有更好的方法去快速定位?我们需要的内容那就是通过文档结构图来实现。
二、文档结构图
文档结构图在Word2003和2007里面它叫文档结构图,但是从Word2010开始(包括2013和2016)它的名字不叫文档结构图,叫导航窗格。
在这个文档里面,我单击视图选项卡,从左侧找导航窗格并单击它。
左侧会出现了一个面板,我在想看第一章的时候单击第一章,马上定位到第一章所在位置,我想看第二章的时候,从这里面单击第二章,马上定位到第二章的位置。
但是有的时候你发现,打开这个文档里面左侧窗格里面是空的,什么内容都没有,为什么出现这种情况?因为要想使我的内容出现在导航窗格里面去,必须对我的目标内容进行特殊化处理——需要内置的样式进行格式化目标标题,也可以用大纲级别来做。
比如我想让我的内容出现在左侧去,我可以定位到目标内容,使用内置的标题一样式,然后给它快速地格式化,你看是不是左侧有对应的了。
我们这个小节就是说的是长篇文档里面怎么快速定位目标标题的方法,一个是文档结构图法,在高版本上叫导航窗格,另一个就是用目录法。
《化工工程制图》课件——第5讲 视图
B-B
A
A
画局部剖要注意的是:剖与不剖的分界线是波浪线。
A-A
B
Bห้องสมุดไป่ตู้
用剖切平面局部地剖开 物体所得的剖视图。
B-B
可用双折线代替波浪线。
A
A
适用范围:
局部剖是一种较灵活的表示方法,适用范围较广。
① 表示小局部内部结构。 ----只有局部内形需要剖切表示时。 ----实心杆上有孔、槽时,应采用局部剖视。
B–B
2. 两个相交的剖切面
用两相交的剖切平面剖开物体的方法称为旋转剖。
剖切平面通过筋、肋板、辐板等 结构的纵向对称面时,不画剖面 线,用粗实线与邻接部分分开。
旋转剖可用于表达轮、盘类物体上的孔、槽结构,及具有 公共轴线的非回转体物体。
旋转剖的画法
A-A
A
A
A
☆ 标注方法: 旋转剖必须标注。
☆ 应注意的问题: ① 两剖切面的交线一般应与机件的轴线重合。 ② 在剖切面后的其它结构仍按原来位置投射。
用几个相 交的剖切平面 和柱面剖开物 A 体的方法称为 复合剖。
A
A
A
A
A-A
采用几个相交的 剖切平面的形式一
☆ 标注方法:
复合剖的标注方法与旋转 剖、阶梯剖的规则相同。
☆ 适用范围:
当机件的内部结构形状较 多,用旋转剖或阶梯剖仍 不能表达完全时,可采用 组合的剖切平面剖开机件 。
☆ 注意问题:
当使用两个以上的相交平面将机件剖切,然后把几个剖切平面展开且平 行某一基本投影面后得到的剖视图,须在视图的上方标注“×—×展 开” 。
➢1.3 局部视图
当物体在平行于 某基本投影面的方向 上仅有某局部结构形 状需要表达,而又没 有必要画出其完整的 基本视图时,可将物 体的局部结构形状向 基本投影面投射,这 样得到的视图,称为 局部视图。
word文档的五种视图方式
Word中的五种视图方式
第一页面视图:页面视图是文档或者其他对象的一种视图,一打印效果一样。
第二普通视图:普通视图与页面视图效果不同,普通视图以一条长虚线表示叶间分隔,是一种显示文本格式设置和简化页面的视图。
第三Web视图:Web视图以Web页的方式显示当前的文档内容可以显示页面的背景。
第四阅读视图:会隐藏一切多余的工具栏,常用工具栏里的阅读按钮,可以切换到阅读板式视图。
关闭也一样,在工具栏里点击关闭就可以。
第五大纲视图:大纲视图用缩进文档标题的形式代表标题在文档结构中的级别。
Word高级应用培训课件(文档视图、审阅修订、删除个人信息、最终状态)
标记文档的最终状态
选择文件选项卡,选择“信息“,选择“保护文档”,选择“标记为最终 状态”。
Office高级应用
Word2010提高——
与他人共享文档
与他人共享文档
Word文档除了可以打印出来供他人阅读外,也可以根据不同的 需要通过多种电子化的方式与他人共享。
与他人共享文档
通过邮件共享 转换为PDF文档格式 Word发送到PPT演示文稿 Word为幻灯片创建讲义 Word共享Excel数据
退出修订状态
点击“修订”按钮,使其弹起黄色消失即可:
文档添加批注
在多人审阅同一文档时,可能需要彼此之间对文档内容的 变更情况作一个解释,或向文档作者询问问题,这时就可在文 档中插入批注。批注是注释信息,并不对文档进行改动。
文档添加批注
添加批注 删除批注 显示审阅者
添加批注
在“审阅”选项卡中单击“新建批注”按钮,然后在批注框中输入信息即 可(可以插入音频或视频)。
Word为幻灯片创建讲义
PowerPoint中的幻灯片可以在Word中 生成讲义并打印。
Word为幻灯片创建讲义
1.在PowerPoint环境下, 准备好PPT文档。
2.选择文件选项卡,选择 “选择”,选择“快速访问工 具栏”,选择“不在功能区中 的命令”,选择“使用 Microsoft Word创建讲义”命 令,选择“添加”按钮,点击 “确定”相应命令显示在快速 工具栏中。
删除文档的个人信息
在文件选项卡中 选择“信息”选择检 查问题,选择检查文 档,在弹出的对话框 选择“检查”按钮, 在弹出的结果中选择 删除全部个人信息。
Office高级应用
Word2010提高——
标记文档的最终状态
文档视图结构PPT课件
7.1.3 文档类 2、文档的序列化
用户单击菜单项“文件|保存”
打开当前文档所对应的文件
§7.1 文档视图结构
用户单击菜单项“文件|另存为…” 询问保存文件名 打开用户输入的文件
生成Carchive的一个对象,并使之与所保存的文件相关联
调用文档类的Serialize成员函数,并将生成的Carchive对象传递给该成员函数
§7.1 文档视图结构
7.1.3 文档类 2、文档的序列化 用户处理的数据往往需要存盘作永久备份。将文档类中的数据成员变量的值 保存在磁盘文件中,或者将存储的文档文件中的数据读取到相应的成员变量 中。这个过程称为序列化(Serialize)。序列化实质上就是让对象将其当前 的状态(由其成员变量的值表示)写入到永久性存储体(通常是指磁盘)中, 以后还可以从永久性存储体中读取对象的状态(载入),从而重建对象。这 种对象的保存和恢复的过程称为 “序列化”。序列化是一种实现对象持久 性(Persistent)的机制,它是一个将对象中的数据转换成一个单一元素 (通常是Stream)的过程。
§7.2 文档视图结构的主要组成类
7.2.2 多文档应用程序的组成类
§7.2 文档视图结构的主要组成类
7.3.3 文档视图结构中各对象之间的关系 1、文档视图结构中各个对象之间的关系
创建
文档对象 指向:●
应用程序对象 指向:● 创建 文档模板 指向:●
视图对象 指向:●
创建
框架窗口 指向:●
创建
教学内容
§7.1 文档视图结构 §7.2 文档视图结构的主要组成类 §7.3 多视图及窗口切分 §7.4 文件操作 §7.5 综合实例——宾馆管理系统的完善 §7.6 小结 思考与练习
第5章文档视图结构
Visual C++程序设计教程
单文档(SDI)应用程序和多文档 (MDI)应用程序的另一不同之处在于 使用文档的模板不同。单文档(SDI) 应用程序使用CSingleDocTemplate模板, 而多文档(MDI)的应用程序使用的是 CMultiDocTemplate模板。
电脑基础·实例·上机系列丛
电脑基础·实例·上机系列丛
清华大学出版社
框架窗口
Visual C++程序设计教程
SDI应用程序的框架窗口是从 CFrameWnd类派生的。在创建应用程序 框架时,MFC应用程序向导会自动为该 程序派生一个应用程序框架窗口类,其 缺省名为CMainFrame,相应的文件为 “MainFrame.h”和“MainFrame.cpp”。
Visual C++程序设计教程
下面举例介绍创建单文档程序的方法。
【例5-1】 创建一文本编辑器。正在编 辑的文本文件的内容将显示在视图上, 用户可在视图上对该文件进行编辑和修 改,对当前文件进行的任何编辑和修改 都会反映到文档的修改上。(光盘:\ 第5章\例5_1)
电脑基础·实例·上机系列丛
清华大学出版社
电脑基础·实例·上机系列丛
清华大学出版社
Visual C++程序设计教程
文档视图应用程序
多文档界面(MDI)应用程序能操作文 档,并允许同时操作多个文档。
电脑基础·实例·上机系列丛
清华大学出版社
基本程序结构
Visual C++程序设计教程
文档视图结构是Microsoft为编程人员提 供的一些类,以方便文件和窗口的创建、 显示、保存等。
文档程序分析
文档视图结构详细介绍
⽂档视图结构详细介绍以单⽂档界⾯(SDI)应⽤程序为例,介绍MFC的⽂档/视图程序结构。
学习要求理解⽂档/视图结构,可在AppWizard⽣成的SDI程序框架的基础上添加必要的代码,以⽣成⾃⼰的应⽤程序。
授课内容⼤部分应⽤程序均要使⽤数据,其主要⼯作可以分为两部分:⼀是对数据的管理,如存储、复制和查询等任务,⼀是对数据的处理和输⼊输出,包括显⽰和打印。
MFC提供了“⽂档/视图”结构⽀持这类应⽤程序。
12.1⽂档/视图概念在⽂档/视图结构⾥,⽂档可视为⼀个应⽤程序的数据元素的集合,MFC通过⽂档类提供了⼤量管理和维护数据的⼿段。
视图是数据的⽤户界⾯,可将⽂档的部分或全部内容在其窗⼝中显⽰,或者通过打印机打印出来。
视图还可提供⽤户与⽂档中数据的交互功能,将⽤户的输⼊转化为对数据的操作。
在MFC中,有两种类型的⽂档视结构,即单⽂档界⾯(SDI:Single Document Interface)应⽤程序和多⽂档界⾯(MDI:Multiple Document Interface)应⽤程序。
在单⽂档界⾯(SDI)程序中,⽤户在同⼀时刻只能操作⼀个⽂档,例如Windows的NotePad(记事本)程序采⽤的就是单⽂档界⾯。
在SDI程序中,打开新⽂档时会⾃动关闭当前打开的活动⽂档,如果当前⽂档修改后尚未保存,会提⽰⽤户是否保存所做的修改。
SDI应⽤程序⼀般都提供⼀个File菜单,在该菜单下有⼀组命令,⽤于新建⽂档(New)、打开已有⽂档(Open)、保存或换名存盘⽂档等。
这类程序相对⽐较简单,常见的应⽤程序有终端仿真程序和⼀些⼯具程序。
多⽂档界⾯(MDI)应⽤程序允许同时对多个⽂档进⾏操作,例如Microsoft Word和Developer Studio本⾝采⽤的都是多⽂档界⾯。
在MDI程序中可以打开多个⽂档(同时也为每个⽂档打开⼀个窗⼝),可以通过切换活动窗⼝激活相应的⽂档进⾏编辑处理。
MDI应⽤程序也提供⼀个File菜单,⽤于新建、打开和保存⽂档。
第二章 Word文档导航的好帮手:文档结构图
第二章Word文档导航的好帮手:文档结构图2.1 定位标题位置原来如此简单一、知识导入打开一个文档,这个文档里面带有一个目录,一般情况下按着Ctrl键单击鼠标左键可以快速地定位到我需要的内容处。
这目录特点都是从原始位置开始然后定位到目标去,然后再返回到原始位置,然后再找目标位置。
有没有更好的方法去快速定位?我们需要的内容那就是通过文档结构图来实现。
二、文档结构图文档结构图在Word2003和2007里面它叫文档结构图,但是从Word2010开始(包括2013和2016)它的名字不叫文档结构图,叫导航窗格。
在这个文档里面,我单击视图选项卡,从左侧找导航窗格并单击它。
左侧会出现了一个面板,我在想看第一章的时候单击第一章,马上定位到第一章所在位置,我想看第二章的时候,从这里面单击第二章,马上定位到第二章的位置。
但是有的时候你发现,打开这个文档里面左侧窗格里面是空的,什么内容都没有,为什么出现这种情况?因为要想使我的内容出现在导航窗格里面去,必须对我的目标内容进行特殊化处理——需要内置的样式进行格式化目标标题,也可以用大纲级别来做。
比如我想让我的内容出现在左侧去,我可以定位到目标内容,使用内置的标题一样式,然后给它快速地格式化,你看是不是左侧有对应的了。
我们这个小节就是说的是长篇文档里面怎么快速定位目标标题的方法,一个是文档结构图法,在高版本上叫导航窗格,另一个就是用目录法。
2.2文档结构图的认识和基本编辑一、知识导入我们知道在一篇长篇文档里面经常会有个目录,通过目录我们可以很好地找到目标内容所在文档的位置目标内容所在文档的位置。
可是如果说一篇文档里面没有目录的情况下,我怎么才能快速地找到我需要的内容,并且定位到它所在的位置呢?这个时候我们可以通过Word里面提供的一种功能——文档结构图。
比如当前文档里面含有目录,通过目录这一块我可以很好地定位到目标标题所在的位置,现在如果没有目录的情况下,我可以单击视图选项卡,再找导航窗格,从导航窗格里面单击不同的标题即可快速地定位到标题所在的位置。
Word几种不同视图方式的特点
Word几种不同视图方式的特点-------------------------------------------------------------------------------普通视图方式普通视图是Word最基本的视图方式,也是Word默认的视图方式,它可显示完整的文字格式,但简化了文档的页面布局(如对文档中嵌入的图形及页眉、页脚等内容就不予显示),其显示速度相对较快,因而非常适合于文字的录入阶段。
广大用户可在该视图方式下进行文字的录入及编辑工作,并对文字格式进行编排。
执行“视图”菜单中的“普通”命令,或按Alt+Ctrl+N组合键均可切换到普通视图方式。
-------------------------------------------------------------------------------联机版式视图方式联机版式视图方式是Word几种视图方式中唯一一种按照窗口大小进行折行显示的视图方式(其它几种视图方式均是按页面大小进行显示),这样就避免了Word窗口比文字宽度要窄,用户必须左右移动光标才能看到整排文字的尴尬局面,并且联机版式视图方式显示字体较大,方便了用户的联机阅读。
另外,采用联机版式视图方式时,Word窗口中还包括一个可调整大小的查找窗格,称为“文档结构图”,专门用于显示文档结构的大纲视图,我们只需点击文档的某个大纲主题,即可迅速跳转到文档的相应部分,十分方便。
联机版式视图方式的排版效果与打印结果并不一致,它不要于用户查看Word文档内容时使用。
要切换到联机版式视图方式,只需执行“视图”菜单中的“联机版式”命令即可。
-------------------------------------------------------------------------------页面视图方式Word的页面视图方式即直接按照用户设置的页面大小进行显示,此时的显示效果与打印效果完全一致,用户可从中看到各种对象(包括页眉、页脚、水印和图形等)在页面中的实际打印位置,这对于编辑页眉和页脚,调整页边距,以及处理边框、图形对象当分栏都是很有用的。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Write ReadString WriteString
写入字节内容 读取字符串 写入字符串
5.7 序列化
函数 GetFile GetObjectSchema SetObjectSchema IsLoading IsStoring ReadClass ReadObject 含 义 获取底层的CFile对象 读取对象版本号 设置对象版本号 是否处于读取状态 是否处于保存状态 读取类信息 读取序列化对象 写入类信息 写入序列化对象
5.8 多文档应用程序
例5-3 使用多文档模板编写彩色泡泡程序。 解题步骤: (1)用MFC生成一个MDI应用程序框架(取工程名为 My),程序均采用默认设置。 (2)将例5-1和例5-2的代码拷贝到程序中即可。Fra bibliotek
5.9.2 窗体视图
例5-4多窗体程序设计方法
(1)用MFC生成一个MDI应用程序框架(取工程名为My), 去掉使用Unicode库选项,其余选项采用默认设置。
5.6 文档/视图结构中的协作关系
CMyApp *pApp=(CMyApp *)AfxGetApp(); CFrameWnd *pFrame = (CFrameWnd *)AfxGetMainWnd(); CMyDoc *pDoc=(CMyDoc *)pFrame->GetActiveDocument(); CMyView *pView=(CMyView *)pFrame->GetActiveView();
(2)选择“项目”|“添加类”|“MFC类”,类名选择 “FormStudent”,基类选择“CFormView”,添加一个 CFormView视图,然后选择“完成”按钮。 (3)删除CMyApp::InitInstance()的前部代码,并添加代码。
BOOL CMDIFormApp::InitInstance() { CMultiDocTemplate* pDocTemplate; pDocTemplate = new CMultiDocTemplate(IDR_MAINFRAM RUNTIME_CLASS(CMyDoc), RUNTIME_CLASS(CChildFrame), // 定义MDI 子框架 RUNTIME_CLASS(CMyView)); if (!pDocTemplate) return FALSE; AddDocTemplate(pDocTemplate); CMultiDocTemplate* pDocTemplate1; pDocTemplate1 = new CMultiDocTemplate(IDR_MAINFRA RUNTIME_CLASS(CMyDoc), RUNTIME_CLASS(CChildFrame), // 定义STUDENT子 RUNTIME_CLASS(FormStudent)); if (!pDocTemplate1) return FALSE; AddDocTemplate(pDocTemplate1);
void CMyView::OnDraw(CDC* pDC) { CMyDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if (!pDoc) return; CBrush brushNew,*pbrushOld; for(int i=0; i<pDoc->m_nBubbleCount; i++) { brushNew.CreateSolidBrush(pDoc->m_colorBubble[i]); pbrushOld=pDC->SelectObject(&brushNew); pDC->Ellipse(pDoc->m_rectBubble[i]); pDC->SelectObject(pbrushOld); brushNew.DeleteObject(); }
}
void CMyView::OnLButtonDown(UINT nFlags, CPoint point) { CMyDoc* pDoc = GetDocument(); ASSERT_VALID(pDoc); if(pDoc->m_nBubbleCount < MAX_BUBBLE) { pDoc->m_colorBubble[pDoc->m_nBubbleCount] = RGB(rand()%256, rand()%256, rand()%256); int r = rand()%50+10; CRect rect(point.x-r, point.y-r, point.x+r, point.y+r); pDoc->m_rectBubble[pDoc->m_nBubbleCount] = rect; pDoc->m_nBubbleCount++; pDoc->SetModifiedFlag(); InvalidateRect(rect, FALSE); } CView::OnLButtonDown(nFlags, point); }
LoadIcon GetProfileInt
GetProfileString WriteProfileInt WriteProfileString AddDocTemplate AddToRecentFileList InitInstance Run OnIdle ExitInstance
MFC类库提供的全局函数
函数 AfxGetApp AfxGetAppName AfxGetInstanceHandle 含 义
获取指向CWinApp对象的指针 获得一个字符串指针,其中包含 应用程序的名字 获得当前应用程序实例的句柄
AfxGetResourceHandle 获得应用程序性资源句柄
CDocTemplate提供的成员函数
视图是框架窗口中的客户区域,是程序与用户的接 口,MFC程序常在视图中设计数据的输入输出功能。 文档类则具有数据管理功能,通过它能够方便地实 现磁盘文件的存取操作。 2、文档序列化
是指将程序数据保存在磁盘文件中,或从磁盘文件 中读取数据到程序中。
文档/视图关系
视图窗口 文件对象 文档对象 存档对象 视图对象
函 数 GetFirstDocPosition GetNextDoc LoadTemplate AddDocument RemoveDocument GetDocString CreateNewDocument 函 数 SaveAllModified CloseAllDocuments OpenDocumentFile SetDefaultTitle
知识点
CWinApp CDocTemplate CMainFrame CView CDocument
CArchive
CScrollView CEditView
5.1文档/视图概念
应用程序对象、文档模板、文档及视 图的关系
5.1文档/视图概念
1、视图与文档类的功能
5.6 文档/视图结构中的协作关系
当前位置 文档 文档 视图 视图 框架 框架 MDI主框架 MDI子框架 任何位置 任何位置 被访问的位 置 视图 模板 文档 框架 视图 文档 MDI子框架 MDI主框架 应用程序 主框架 访问方法
GetFirstViewPosition和GetNextView GetDocTemplate GetDocument GetParentFrame GetActiveView GetActiveDocument MDIGetActive GetParentFrame AfxGetApp AfxGetMainWnd
BOOL CMyDoc::OnNewDocument() { if (!CDocument::OnNewDocument()) return FALSE; // TODO: 在此添加重新初始化代码 // (SDI 文档将重用该文档) m_nBubbleCount = 0; return TRUE; }
数据保存 读数据 数据保存 送显 在文档的 在视图成 员变量中 成员变量 中 由文档实 由视图 由视图 现数据的 实现数 实现文 据更新 提取和插 档数据 入 更新
5.2应用程序类(CWinApp)
数据成员 m_pszAppName m_lpCmdLine m_pMainWnd m_pszExeName m_pszProfileName m_pszRegistryKey 成员函数
RecalcLayout SetActiveView SetMessageText
ShowOwnedWin
ActivateFrame BeginModalState CreateView
GetControlBar GetMessageString InitialUpdateFrame
5.4 视图类CView
CView类成员函数
函数 含 义
DoPreparePrinting
GetDocument OnInitialUpdate
设置文档标题
获得指向与视图相关的文档指针 在类第一次构造后由MFC调用
OnScroll
IsSelected OnDraw
当用户滚动时,CView的响应
确定文档是否被选中 由MFC调用发出文档到设备环境
Visual C++程序设计
杨琦 计算机教学实验中心 西安交通大学
授课内容
5.1文档/视图概念 5.2应用程序类和文档模板类 5.3 框架类 5.4 视图类 5.5 文档类 5.6 文档/视图结构中各类对象之间的协作关系 5.7 序列化 5.8 多文档应用程序 5.9 其他视图类 5.10 典型案例
OnPrepareDC
OnUpdate
在调用OnDraw前允许修改设备环 境表 由MFC调用对文档地修改进行响 应