- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第12章 多重窗体与MDI窗体程序设计多重窗体与MDI窗体概述多重窗体程序设计MDI窗体程序设计12.1 多重窗体与MDI窗体概述多重窗体是指一个应用程序中有多个并列的普通窗体,每个窗体都是一个对象,可以有属于自己的对象、属性和事件过程,完成不同的功能。MDI窗体是指一个应用程序(父窗体)中包含多个文档(子窗体),绝大多数基于Windows的大型应用程序都是MDI窗体,如Microsoft Excel和Microsoft Word等应用程序都是MDI窗体程序。MDI窗体可以同时打开多个文档,它简化了文档之间的信息交换。在多重窗体中,窗体分为模态(Modal)和非模态(Nonmodal)两种类型。在屏幕上显示后用户必须响应的窗体叫模态(Modal)窗体,除非用户单击OK(确定)或Cancel(取消)按钮、或者关闭这个窗体,否则这种窗体将一直得到输入焦点。用户可以随意在其间切换的窗体叫非模态(Nonmodal)窗体或无模式窗体。为了方便用户使用,大多数Windows下的应用程序在显示信息时,都使用非模态窗体。因此,在Visual Basic中建立新窗体时,非模态窗体是缺省设置。窗体的很多属性都可以独立设置,其中包括窗体的标题、大小、边框类型、前景颜色、背景颜色、显示字库和背景画面等。MDI窗体允许创建在单个容器窗体中包含多个窗体的应用程序,允许用户同时显示多个文档,每个文档显示在它自己的窗体中。MDI窗体是有父子关系的窗体,可以根据窗体作用的不同,来确定窗体是父窗体还是子窗体。文档或子窗体被包含在父窗体中,父窗体为应用程序中所有的子窗体提供工作空间,用户在父窗体完成几乎所有的工作。例如:Microsoft Excel允许创建并显示不同样式的多文档窗体,每个子窗体都被限制在Excel父窗体的区域之内。当最小化Excel父窗体时,所有的文档窗体都被最小化,只有父窗体的图标显示在任务栏中。当关闭Excel父窗体时,所有的文档窗体都被关闭,但关闭某个文档窗口时,Excel父窗体不会被关闭。具体什么时候选用单窗体程序,什么时候使用多重窗体或MDI窗体呢?这需要根据应用程序的目的,来决定使用哪种界面样式最好。例如:日历程序最好设成单窗体程序,因为没有必要同时打开一个以上日历;一个处理保险索赔的应用程序可能要设计成MDI窗体,使用多文档界面样式,因为一个职员很可能会同时处理一个以上索赔,或者需要对两个索赔进行比较;而一个管理信息系统(MIS系统),需要完成的功能比较多,比如最基本的功能添加、修改、删除和查询记录等,这些功能的实现都需要窗体界面,而这些窗体一般都是并列使用,所以像学生成绩管理系统这样的应用程序一般设计成多重窗体程序。12.2 多重窗体程序设计在多重窗体程序中,要建立的界面由多个窗体组成,每个窗体的界面的设计与前面学过的完全一样。程序代码也是针对每个窗体编写的,因此也与单一窗体程序设计中的代码编写类似,只要注意各个窗体之间的相互关系就可以了。多重窗体实际上是单一窗体的集合,而单一窗体是多重窗体程序设计的基础。掌握了单一窗体程序的设计,多重窗体的程序设计是很容易的。12.2.1 添加窗体如果想在现有的工程中添加一个窗体,需要使用“添加窗体”对话框,如右图所示,可以用三种方法打开“添加窗体”对话框:“新建”选项卡(1)通过“工程”(Project)菜单中的“添加窗体”(Add Form)命令。(2)单击工具栏上的“添加窗体”按钮。(3)在“工程资源管理器”窗口内单击右键,在弹出菜单中选择“添加”,再在下一级子菜单中选择“添加窗体”。在“添加窗体”对话框里,可以选择“新建”选项卡新建一个窗体,也可以选择“现存”选项卡把一个属于其他工程的窗体添加到当前工程中,这是因为每个窗体都是以独立的文件保存的(扩展名为frm)。当新建一个窗体时,可以选择欲建立窗体的类型(Visual Basic的不同版本预定义窗体集也不一样),默认是建立一个新的空白窗体,你可以选择建立为特定任务设计的半成品窗体。程序中第一个窗体被默认命名为Form1,后续的窗体则分别命名为Form2、Form3等,为了便于在代码中引用窗体,最好是根据窗体的功能进行重新命名。当添加一个已经存在的窗体到当前工程时,有两个问题需要注意:(1)该工程内的每个窗体的Name属性不能相同,否则不能将现存的窗体添加进来。(2)在该工程内添加进来的现存窗体实际上在多个工程中共享,因此,对该窗体所做的改变,会影响到共享该窗体的所有工程。12.2.2 设置启动对象在单一窗体程序中,程序的执行没有其他选择,即只能从这个窗体开始执行。多重窗体程序由多个窗体构成,而且多个窗体多是并列关系,Visual Basic怎么知道是从哪个窗体开始执行呢?程序运行过程中,首先执行的对象被称为启动对象。Visual
您可能关注的文档
- Visual Basic程序设计第5章 VB常用控件.ppt
- Visual Basic程序设计第5章 Visual Basic常用控件.ppt
- Visual Basic程序设计第5章 数 组.ppt
- Visual Basic程序设计第5章.ppt
- Visual Basic程序设计第5章顺序结构程序设计.ppt
- Visual Basic程序设计第6章 对话框的设计.ppt
- Visual Basic程序设计第6章 过 程.ppt
- Visual Basic程序设计第6章.ppt
- Visual Basic程序设计第6章选择结构与循环结构程序设计 .ppt
- Visual Basic程序设计第7章 菜单的设计.ppt
文档评论(0)