《机器人学导论》第三版课后习题答案
创建MDI应用程序会涉及到什么问题?希望用户能完成的任务应是需要一次打开多个文档的任务。文本编辑器或文本查看器。第二,应在应用程序中提供工具栏来完成常见的任务,设置字体样式、加载和保存文档等。第三,应提供一个包含Window菜单项的菜单,让用户可以重新定位打开的窗口(平铺和层叠),显示所有已打开窗口的列表。MDI应用程序的另一个功能是如果打开了一个窗口,该窗口包含一个菜单,则该菜单就应集成到应用程序的主菜单上。MDI应用程序至少要由两个截然不同的窗口组成。第一个窗口叫作MDI容器(Container),可以在容器中显示的窗口叫作MDI子窗口。MDI容器既可以叫“MDI容器”也可以叫“主窗口”,MDI子容器既可以叫“MDI子容器”又可以叫“子窗口”。
想要创建一个MDI应用程序?首先要像创建其他应用程序那样,在Visual Studio中创建一个Windows窗体应用程序。(1)在C:\BegVCSharp\Chapter16目录中创建一个新的Windows应用程序,命名为MDIBasic。(2)要把应用程序的主窗口从一个窗体改为MDI容器,只需把窗体的IsMdiContainer属性设置为true即可。改变窗体的背景色,使之表示该窗体现在只有一种背景色,不应放置任何可见的控件(也可以放置控件,在某些情况下这也是合理的,例如创建窗口的停靠区域)。选择窗体,设置如表16-11所示的属性。
| 属性 | 值 |
|------------|------------|
| Name | frmContainer |
| IsMdiContainer | True |
| Text | MDI Basic |
| WindowState | Maximized |
(3)要创建子窗口,可以选择“项目➪添加新项”(Project ➪ Add New Item),在打开的对话框中选择“Windows窗体”(Windows Form),给项目添加一个新窗体,命名为frmChild。(4)把这个新窗体的MdiParent属性设置为主窗口的一个引用,该窗体就变成子窗口了。不能通过“属性”(Properties)面板设置这个属性,只能通过代码来设置。修改这个新窗体的构造函数:
public frmChild(frmContainer parent) {
InitializeComponent();
MdiParent = parent;
}