第六章C#的多文档窗体
设置显示或隐藏状态栏
设置显示文本数据所采用的选项
各种排列窗口命令和已打开的窗口列表 显示关于对话框
1-8
打开文件阅读子窗体
在打开文件进行阅读之前,首先需要保证子窗体具有查看 文件文本内容的功能,子窗体FrmReader负责打开和显 示文本文件中的内容。
1-9
设置阅读参数对话框实现
1-10
这种需要在一个窗体中同时包含多个子窗体的应用程序通 常成为多文档(MDI)应用程序,子窗体之间可以进行数 据交互,也可以互不相干。
Visual Studio 2010开发环境就是多文档应用程序的典型 实例。
1-3
创建多文档父窗体
当Form类的IsMdiContainer属性为true时表示该窗体为 多文档窗体。
toolBarToolStripMenuIte m
statusBarToolStripMenuI tem
optionsToolStripMenuIte m
windowsMenu
aboutToolStripMenuItem
退出 工具栏
状态栏
选项
窗口 关于
功能说明 用于打开要查看的文本文件 退出应用程序 设置显示或隐藏工具栏
1-4
添加子窗体到父窗体
在Form类提供一个属性MdiParent,用来获取或设置当 前窗体的多文档父窗体。要为一个多文档父窗体添加子窗 体主要有3个步骤:
(1)获取要添加的子窗体childForm,创建新创建或从 其他地方获取已经存在的窗体。
(2)将子窗体childForm的MdiParent属性设为当前多 文档父窗体。
多文档窗体的MainMenu属性所指向的菜单为应用程序主 菜单,通过该菜单的MdiWindowListItem属性指明各子 窗体标题被动态添加到哪个菜单项。
Visual Studio 2010为多文档窗体提供一个专门模板,通 过它可以自动生成一个父窗体,该父窗体包含:“文件” 菜单、“窗口”菜单、“工具”菜单、工具栏、状态栏等 基本控件。窗体设计人员可以在该窗体基础上进行修改得 到适合自己需要的窗体。
void LayoutMdi(MdiLayout value) 其中,参数value是MdiLayout枚举类型,用来表明如何排
列多个子窗体。
1-7
文本编辑器实例
文件阅读器实例MultiTextReader的主要框架。
菜单
菜单文本
openToolStripMenuItem 打开
exitToolStripMenuItem
Form类提供属性MdiChildren,它是一个Form类型数组, 用来获取当前父窗体所包含的所有子窗体,通过遍历该集合 可以找到当前父窗体中的所有子窗体。
1-6
排列子窗体
在使用多文档窗体程序的时候,通常会出现多个子窗体,有 时为了同时浏览多个子窗体的数据,需要对这些窗体进行排 列。
Form类提供LayoutMdi()方法,用来排列多文档父窗体中的 多个子窗体,LayoutMdi()方法的声明如下:
C#的多文. 多文档窗体应用程序简介 2. 创建多文档窗体应用程序 3. 管理子窗体 4. 实例:文件阅读器
1-2
什么是多文档窗体程序
在诸如文本编辑器、图像处理器这样的应用软件中,通常 需要同时处理一个或多个文档,每个文档独立地执行软件 所需要的功能。
(3)显示子窗体childForm。
1-5
操作子窗体
要关闭某个子窗体,只需要在选中它的情况下,通过单击界 面上右上角的“关闭”按钮来完成。也可以通过Form的 ActiveMdiChild来获取当前活动的子窗体childForm,然后 通过调用childForm的Close()方法来关闭它。