当前位置:文档之家› 多重窗体与多重文档界面

多重窗体与多重文档界面


3. 设置启动窗体
属性” “工程/属性” 工程 属性 对象” 对象” “启动
设置启动对象
4. 删除窗体
先在工程资源管理器窗口中选定要删除窗体,然后通过工程菜 单的“移除窗体”命令或右击工程管理窗口的窗体名,在快捷菜 单中选取“移除窗体”
5. 窗体方法
(1)Load语句:装入窗体到内存但没有显示窗体
排列方式Байду номын сангаас
常数 vb C ascad e v b T ile H o r iz o n ta l v b T ile V e r tic a l v b A rran g eIc o n s 值 0 1 2 3 描述 层叠所有非最小化 水平平铺所有非最小化 垂直平铺所有非最小化 重排最小化
9.3 多重文档界面
多文档界面设计是由一个MDI窗体和至少一个子窗体组 成的。 其特点是:
1. MDI窗体只能有且仅有一个。 2. 子窗体至少一个。 3. 用户可以改变并移动子窗体的大小,但被限制在MDI窗体内。 4. 子窗体最小化后显示在MDI窗体左下角 5. MDI 窗体最小化时,在任务栏显示,所有子窗体相应最小化,但不在任 务栏显示。 6. 还原MDI窗体时其子窗体同时按最小化前的状态显示。 7. 通过子窗体的AutoShowChildren属性,在程序加载时自动显示或隐藏该 窗体 8. MDI和子窗体可各有自己的菜单,但当子窗体的加载时覆盖MDI窗体的 菜单。
Sub Text1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Button = 2 Then PopupMenu EditMenu, vbPopupMenuCenterAlign End Sub
形式: Load 窗体名称 (2)Unload语句:从内存删除窗体 形式: Unload 窗体名称
(3)Show方法:显示一个窗体(当窗体没有Load,自动Load) [窗体名称].Show [模式] 0 - 无模式:可以对其他窗体进行操作, 1 - 有模式:关闭才能对其他窗体进行操作。 (4) Hide方法:隐藏窗体,没有Unload-删除 [窗体名称.] Hide 6. 不同窗体间数据的存取 (1)存取控件的属性 存取控件的属性 另一窗体名.控件名.属性 (2)存取变量的值 存取变量的值 另一窗体名.全局变量名
模块是程序中相结独立的程序单元,VB中主要有三种不同的模块: 标准模块、窗体模块和类模块。
一、标准模块
1、组成和作用 由全局变量声明、模块变量声明和通用过程等组成,用于定 义全局或模块级的变量或过程。 2、建立标准模块 执行菜单: 工程 → 添加模块
二、窗体模块
1、组成和作用 由一个或多个窗体组成,实现界面设计,完成变量或常量的 声明、通用或事件驱动子过程的定义。
例 输入和计算学习成绩。
模块: 模块: Public MATH As Single Public PHYSICS As Single Public CHEMISTRY As Single Public CHINESE As Single Public ENGLISH As Single
9.3 模块
三、 弹出菜单(快捷菜单) 弹出菜单(快捷菜单)
显示在窗体的浮动菜单,操作时使用右键,菜单与鼠标位置 有关。设计与普通菜单,仅该菜单名不可显示;要显示时使用 PopupMenu方法弹出菜单。 形式: [对象.]PopupMenu 菜单名, 标志, x, y 标志,表示弹出的位置和触发的键 位置 性能 0:X 位置确定弹出菜单的左边界 0只能用鼠标左键触发 弹出菜单; 4:弹出菜单以X为中心 2:能用鼠标左、右键 键触发弹出菜单; 8: X 位置确定弹出菜单的右边界 位置与性能是加的关系。
3. 快捷键(Shortcut) 菜单名没有快捷键 4. 复选(Checked)检查框 TRUE 有 5. 有效(Enabled)检查框 6. 可见(Visible)检查框
二、 菜单项增减
在程序运行时,菜单随时增减,如“文件”菜单能保留最近打开 的文件数。这同控件数组一样,使用菜单数组。 步骤: 1.在菜单设计时,加入一个菜单项,其Index为0(菜单数组), Visual为False。 2. 2.在程序运行时,通过Load方法向菜单数组增加新的菜单项。 Load 同样,要删除所建立的菜单项,使用UnLoad方法向菜单数 组减少菜单项。
添加“现存”窗体时要注意: 添加“现存”窗体时要注意: 防止多个窗体的Name相同而不能添加; 添加的窗体实际是将其他工程中已有的窗体加入,多个工程 共享窗体; 通过“另存为”命令以不同的窗体文件名保存,断开共享。
2.
保存窗体
一个工程中有多个窗体,应分别取不同文件名保存在磁盘上 ,VBP工程文件中记录了该工程的所有窗体文件名。
多文档界面(MDI) 多文档界面
创建和设计MDI MDI窗体及其子窗体 1. 创建和设计MDI窗体及其子窗体
(1) 创建和设计MDI窗体 创建: 创建: “工程/添加MDI窗体”命令
标准窗体 MDI 窗体 MDI 子窗体
(v6b8-1)
设计: 设计:一般有菜单栏、工具栏、状态栏
创建和设计MDI MDI子窗体 (2) 创建和设计MDI子窗体 创建: 创建: MDI子窗体是一个MDIChild属性为True的普通窗体。 要创建多个子窗体,通过窗体类来实现: Public Sub FileNewProc() Dim NewDoc As New frmMDIChild No = No + 1 NewDoc.Caption = "no" & No NewDoc.Show End Sub 设计: 设计:可有菜单栏,但必须有文本框。
2、建立窗体 执行菜单: 工程 → 添加窗体 3、调用窗体过程 [窗体名.]过程名([参数列表])
三、Sub Main过程 一般程序的运行是从某指定的窗体 某指定的窗体文件开始执行 某指定的窗体 的,但有时需要在窗体被显示前,先完成一些初始 化工作,为完成这一工作可在显示窗体之前应先执 行没有主界面的“Sub Main()”过程,这就需要设计 这样一个“通过子过程”,并通过菜单:工程→工 程属性,打开工程属性对话框,并将“Sub Main()” 过程设为“启动对象”即可。 “启动对象”
多文档界面应用程序中的“窗口” 3. 多文档界面应用程序中的“窗口”菜单
(1)显示打开的多个文档窗口 显示打开的多个文档窗口 要在某个菜单上显示所有打开的子窗体标题,只需利用菜单编辑器 将该菜单的WindowList属性设置为True。 (2)排列窗口 排列窗口 利用Arrange方法进行层叠、平铺和排列图标。 形式: MDI窗体对象.Arrange 排列方式
菜单、 第9章 菜单、多重窗体 与多重文档界面
9.1 菜单设计
菜单形式:
主菜单条 菜 单 项 快捷键 热键 子菜单标记 子菜单名 分隔线 主菜单名
一、菜单编辑器的使用
工具/菜单编辑器(CTRL+E) 窗体上快显菜单/菜单编辑器
常用属性:
菜单项属性 操作按钮 菜单列 表框 1. 标题(Caption) 热键:前面加& 2. 名称(Name)文本框 分隔符也应有名称。
9.2 多重窗体
应用程序根据所解决问题的不同,需要建立多个窗体作 为信息载体。 Windows环境的应用程序至少需要一个窗体。 多窗体可以是并列的,并有且仅有一个窗体是启动窗体。 多窗体也可以是层次结构的,即一个MDI窗体(父窗体) 和多个子窗体。
1. 添加窗体
“工程或工具栏|添加窗体” 新建 现存
MDI子窗体的Name
MDI窗体与子窗体的交互 2. MDI窗体与子窗体的交互
(1)活动子窗体和活动控件 活动子窗体和活动控件 MDI窗体的两个属性:ActiveForm 和ActiveControl 例将子窗体的文本框中所选文本复制到剪贴板上: ClipBoard.SetText frmMDI.ActiveForm.ActiveControl.SelText (2)显示 显示MDI窗体及其子窗体 显示 窗体及其子窗体 显示任何窗体的方法为show,还有有关规则: (1)加载子窗体时,其父窗体会自动加载并显示;反之则无。 (2)MDI窗体有AutoShowChildren属性,决定是否自动显示子窗体
相关主题