第05章Windows应用程序试卷.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
5.4 单文档界面和多文档界面 5.4.1 基于对话框的应用程序 基于对话框的应用程序是所有应用程序中最简单的一种。它向用户提供一个对话框,该对话框提供了所有的功能,如系统监控程序。Windows任务管理器就是一个很好的例子,如图5.26所示。这类应用程序的用途比较单一,仅仅可以完成用户输入量非常少的特定任务,或者专门处理某一类型的数据。 图5.26 Windows任务管理器 5.4.2 单文档界面 单文档(SDI)应用程序是目前最为流行的应用程序开发模式。单文档窗体指的是在某一时刻,程序只能激活一个窗体。如图5.27所示,当单击“窗体一”上的“显示窗体二”按钮后,弹出“窗体二”窗体,此时窗体一变灰,处于非激活状态,窗体二处于激活状态。 处于激活状态 图5.27 SDI窗体 5.4.3 多文档界面 1.创建MDI父窗体 在多文档界面(MDI)应用程序中,MDI父窗体是包含MDI子窗口的窗体,在“Windows 窗体设计器”中创建 MDI 父窗体很容易。首先创建Windows 应用程序,在属性窗口中,将IsMDIContainer属性设置为true,将该窗体指定为子窗口的MDI容器。 将MenuStrip 组件从“工具箱”拖到窗体上,创建一个 Text 属性为“文件(F)”的顶级菜单项,且它带有“新建(N)”和“关闭(C)”子菜单项。再创建一个名为“窗口(W)”的顶级菜单项。第1个菜单将在运行时创建并隐藏菜单项,而第2个菜单将跟踪打开MDI 子窗口。此时,已创建了一个 MDI 父窗口。 5.4.3 多文档界面 2.创建MDI子窗体 多文档界面(MDI)应用程序的基础是MDI子窗体,因为它们是用户交互的中心。在创建了MDI父窗体的基础上,下面介绍如何创建并打开MDI子窗体。 (1)按照如图5.28所示创建一个MDI子窗体,注意将textBox控件从“工具箱”拖到窗体上。在属性窗口中,将Anchor属性设置为“Top,Left”,并将Dock属性设置为“Fill”,这样,即使调整MDI子窗体的大小,textBox 控件也会完全填充该窗体的区域。 (2)为“新建”菜单项创建 Click 事件处理程序,单击“新建”菜单项,创建新的 MDI子窗体。由事件处理程序处理 NewMenuItem 的 Click 事件。 ? private void NewMenuItem_Click(object sender, EventArgs e) { childForm MDIChild = new childForm(); MDIChild.MdiParent = this; //设置子窗体的父窗体 MDIChild.Show(); //显示一个新窗体 } 5.4.3 多文档界面 程序运行结果如图5.29所示。 图5.28 MDI子窗体 图5.29 MDI程序运行结果 5.4.3 多文档界面 3.确定活动的MDI子窗体 一个MDI应用程序可以有同一个子窗体的多个实例,通过ActiveMDIChild属性,可以得到当前具有焦点的子窗体或返回最近活动的子窗体。当窗体上有多个控件时,通过ActiveMDIChild属性,可以得到当前活动子窗体上有焦点的控件。例如,确定活动的子窗体: ? childForm activeChild = this.ActiveMDIChild; ? 4.排列子窗体 应用程序通常包含对打开的 MDI 子窗体进行操作的菜单命令,如“平铺”、“层叠”和“排列”。可以使用LayoutMdi方法和MdiLayout枚举来重新排列 MDI 父窗体中的子窗体。 LayoutMdi()方法可使用4个不同MdiLayout枚举值中的一个,这些枚举值将子窗体显示为层叠、水平平铺或垂直平铺,或者在MDI窗体下部显示排列的子窗体图标。这些方法常用于菜单项的Click 事件处理程序。这样,选择菜单项可在MDI子窗口上产生所需的效果。 5.4.3 多文档界面 为了排列子窗体,用 LayoutMdi()方法为 MDI 父窗体设置 MdiLayout 枚举。其枚举值如表5.18所示。 成 员 名 称 说 明 ArrangeIcons 所有 MDI 子图标均排列在 MDI 父窗体的工作区内 Cascade 所有 MDI 子窗口均层叠在 MDI 父窗体的工作区内 TileHorizontal 所有 MDI 子窗口均水平平铺在 MDI 父窗体的工作区内 TileVertical 所有 MDI 子窗口均垂直平铺在 MDI 父窗体的工作区内 表5.18 MdiLayout枚举值 例如,对MDI父窗体(myForm1)的子窗体使用MdiLayout枚举的“层

文档评论(0)

***** + 关注
实名认证
内容提供者

我是自由职业者,从事文档的创作工作。

1亿VIP精品文档

相关文档