即指出表单最大化时是如何工作的。如果子表单是MD类的,它 会包含在父表单中,并共享父表单的标题栏、标题、菜单以及工 具栏。非MDI类的子表单最大化时将占据父表单的全部用户区域, 但仍保留它本身的标题和标题栏。 屈性-文者1 若要建立一个子表单,可以: Form1 ■用“表单设计器”创建或编辑表单。 全部数据方法程序布局其他 ■可将表单的 Show Window属性设置为 下列值之一: OLEDragPict Picture 作为顶层表单 ●0在屏幕中:子表单的父表单将为以面 VFP的主窗口。 ScrollBars 0-无认 ●1在顶层表单中。当子窗口显示时,钟 子表单的父表单是活动的顶层表单 Ti lebAr 1-打开默认 如果希望子窗口出现在顶层表单窗口2 内,而不是出现在VFP主窗口内时。 指定在创建过程中表单窗口显示表单或工具栏 可选用该项设置 2021-2-23 Visual Foxpro60程序设计
2021-2-23 Visual FoxPro 6.0程序设计 16 即指出表单最大化时是如何工作的。如果子表单是MDI类的,它 会包含在父表单中,并共享父表单的标题栏、标题、菜单以及工 具栏。非MDI类的子表单最大化时将占据父表单的全部用户区域, 但仍保留它本身的标题和标题栏。 若要建立一个子表单,可以: ■用“表单设计器”创建或编辑表单。 ■可将表单的ShowWindow属性设置为 下列值之一: ● 0-在屏幕中:子表单的父表单将为 VFP的主窗口。 ● 1-在顶层表单中。当子窗口显示时, 子表单的父表单是活动的顶层表单。 如果希望子窗口出现在顶层表单窗口 内,而不是出现在VFP主窗口内时。 可选用该项设置
■如果希望子表单最大化时与父表单组合成一体,可设置表单的 MDIFor属性(指定表单是否为MD窗口)为“真”(T);如果 希望子表单最大化时仍保留为一独立的窗口,可设置表单的 MDIForm属性为“假”(F)。 浮动表单是由子表单变化而来。若要指定为浮动表单,可以: ■用“表单设计器”创建或编辑表单 ■可将表单的 Show Window属性设置为以下值之一: ●0-在屏幕中。浮动表单的父表单将出现在VFP主窗口。 ●1-在顶层表单中。当浮动窗口显示时,浮动表单的父表单将是 活动的顶层表单 ■将表单的 Desk Top属性(指定表单是否包含在VFP主窗口中) 设置为“真”(T)。 若要指定顶层表单,可以: ■用“表单设计器”创建或编辑表单 ■将表单的 I Show Window属性设置为“2-作为顶层表单”。 2021-2-23 Visual Foxpro60程序设计
2021-2-23 Visual FoxPro 6.0程序设计 17 ■如果希望子表单最大化时与父表单组合成一体,可设置表单的 MDIForm属性(指定表单是否为MDI窗口)为“真”(.T.);如果 希望子表单最大化时仍保留为一独立的窗口,可设置表单的 MDIForm属性为“假” (.F.)。 浮动表单是由子表单变化而来。若要指定为浮动表单,可以: ■用“表单设计器”创建或编辑表单。 ■可将表单的ShowWindow属性设置为以下值之一: ●0-在屏幕中。浮动表单的父表单将出现在VFP主窗口。 ●1-在顶层表单中。当浮动窗口显示时,浮动表单的父表单将是 活动的顶层表 单。 ■将表单的DeskTop属性(指定表单是否包含在VFP主窗口中) 设置为“真” (.T.)。 若要指定顶层表单,可以: ■用“表单设计器”创建或编辑表单。 ■将表单的ShowWindow属性设置为“2-作为顶层表单”
2、显示位于顶层表单中的子表单 如果所创建的子表单中的 Show Window属性设置为“1-在顶层表 单中”,则不需直接指定一顶层表单作为子表单的父表单。而是 在子窗口出现时,VFP指派成为该子表单的父表单 若要显示位于顶层表单中的子表单,可以 ■创建顶层表单。 ■在顶层表单的事件代码中包含 DO FORM命令,指定要显示的 子表单的名称。例如,在顶层表单中建立一个按钮,然后在按钮 的Clck事件代码中包含如下的命令,如图所示: Ae Forml □图 其他 注意。在显示子表单时,顶 层表单必须是可视的、活动的 对象0B): Comm and1 过程):回ick 因此,不能使用顶层表单的 DO FORM MYCHILD 事件来显示子表单,因为 此时顶层表单还未激活 ■激活顶层表单,如有必 n调用子表单 连编① 要,触发用以显示表单的 事件 2021-2-23 Visual Foxpro60程序设计
2021-2-23 Visual FoxPro 6.0程序设计 18 2、显示位于顶层表单中的子表单 如果所创建的子表单中的ShowWindow属性设置为“1-在顶层表 单中” ,则不需直接指定一顶层表单作为子表单的父表单。而是 在子窗口出现时,VFP指派成为该子表单的父表单。 若要显示位于顶层表单中的子表单,可以: ■创建顶层表单。 ■在顶层表单的事件代码中包含DO FORM命令,指定要显示的 子表单的名称。例如,在顶层表单中建立一个按钮,然后在按钮 的Click事件代码中包含如下的命令,如图所示: 注意:在显示子表单时,顶 层表单必须是可视的、活动的。 因此,不能使用顶层表单的 Init事件来显示子表单,因为 此时顶层表单还未激活。 ■激活顶层表单,如有必 要,触发用以显示表单的 事件
3、隐藏VFP主窗口 在运行顶层表单时,可能不希望VFP主窗口是可视的。使用应用 程序对象的 Visible属性(指定对象是可见还是隐藏)按要求隐藏 或显示ⅤFP主窗口。 若要隐藏VFP主窗口,可以: ■在表单的Init事件中,包含下列代码行: Appliction Visible=F ■在表单的 Destroy事件中,包含下列代码行 Appliction Visible=T 在某些方法程序或事件中,可使用 THISFORM. Release命令关闭表 单。 注意:也可以在配置文件中包含以下行,用以隐藏ⅤFP主窗口: SCREEN=OFF 4、在顶层表单中添加菜单 若要在顶层表单中添加菜单,可以: ■创建顶层表单的菜单。 2021-2-23 Visual Foxpro60程序设计 返回19
2021-2-23 Visual FoxPro 6.0程序设计 19 3、隐藏VFP主窗口 在运行顶层表单时,可能不希望VFP主窗口是可视的。使用应用 程序对象的Visible属性(指定对象是可见还是隐藏)按要求隐藏 或显示VFP主窗口。 若要隐藏VFP主窗口,可以: ■在表单的Init事件中,包含下列代码行: Appliction.Visible=.F. ■在表单的Destroy事件中,包含下列代码行: Appliction.Visible=.T. 在某些方法程序或事件中,可使用THISFORM.Release命令关闭表 单。 注意:也可以在配置文件中包含以下行,用以隐藏VFP主窗口: SCREEN=OFF 4、在顶层表单中添加菜单 若要在顶层表单中添加菜单,可以: ■创建顶层表单的菜单。 返回
■在表单的Init事件中,运行菜单程序并传递两个参数: Do menuname mpr WITH oForm, LAutoRename 其中, oFor是表单的对象引用。在表单的In事件中,THS作 为第一个参数进行传递。 L Autorename指定了是否为菜单取 个新的唯一的名字。如果计划运行表单的多个实例,则将T传递 给 LAuto Rename。 例如,可以使用下列代码调用名为 mySDImenu的菜单 DO my SDImenu mpr WITH THIS,T 7.1.3用表单集扩充表单 可以将多个表单包含在一个表单集中,作为一组处理。表单集有 以下优点: ■可同时显示或隐藏表单集中的全部表单。 ■可以可视的调整多个表单以控制它们的相对位置 ■因为表单集中所有表单都是在单个SCX文件中用单独的数据 2021-2-23 Visual Foxpro60程序设计 20
2021-2-23 Visual FoxPro 6.0程序设计 20 ■将表单的ShowWindow属性设置为“2-作为顶层表单” 。 ■在表单的Init事件中,运行菜单程序并传递两个参数: Do menuname.mpr WITH oForm,LAutoRename 其中,oForm是表单的对象引用。在表单的Init事件中,THIS作 为第一个参数进行传递。 LAutoRename指定了是否为菜单取一 个新的唯一的名字。如果计划运行表单的多个实例,则将.T.传递 给LAutoRename。 例如,可以使用下列代码调用名为mySDImenu的菜单: DO mySDImenu.mpr WITH THIS,.T. 7.1.3用表单集扩充表单 可以将多个表单包含在一个表单集中,作为一组处理。表单集有 以下优点: ■可同时显示或隐藏表单集中的全部表单。 ■可以可视的调整多个表单以控制它们的相对位置。 ■因为表单集中所有表单都是在单个.SCX文件中用单独的数据