创建多文档界面(MDI)应用程序
1. 引言
多文档界面(MDI)应用程序是多任务处理范式的一种实用形式。在单个应用程序中同时打开多个文档,理论上用户可以完成两倍的工作量。创建 MDI 应用程序通常比要求用户打开两次应用程序以同时打开两个文档更高效。
2. 创建 MDI 应用程序的基本要素
创建 MDI 应用程序需要一个父窗体类和一个子窗体类,它们可以是继承自 Form 对象的任何类,实际上,任何现有的 Windows 窗体都可以作为 MDI 父窗体或子窗体,没有限制。
3. 控制 MDI 窗体的细节
创建 MDI 应用程序的基本功能并不复杂,只需添加几行代码(假设已经有子文档类)。但控制 MDI 应用程序的一些细节则需要更多的操作。
3.1 处理菜单
当父文档和子文档都有相关联的菜单时,通常在子文档激活时,父文档的菜单栏会发生变化,这称为菜单合并,即子菜单和父菜单合并为一个菜单栏。
重复菜单项问题 :当存在重复的菜单项时,会出现问题。例如,在 Document 类的构造函数中添加以下代码:
MenuItem miFile = mnuMain.MenuItems.Add("File");
此时父窗体和子窗体都有一个 “File” 菜单,编译并运行应用程序,打开新的子文档时,会出现两个 “File” 菜单。 -