可视化表单设计ppt课件

上传人:ni****g 文档编号:591371808 上传时间:2024-09-17 格式:PPT 页数:130 大小:1.30MB
返回 下载 相关 举报
可视化表单设计ppt课件_第1页
第1页 / 共130页
可视化表单设计ppt课件_第2页
第2页 / 共130页
可视化表单设计ppt课件_第3页
第3页 / 共130页
可视化表单设计ppt课件_第4页
第4页 / 共130页
可视化表单设计ppt课件_第5页
第5页 / 共130页
点击查看更多>>
资源描述

《可视化表单设计ppt课件》由会员分享,可在线阅读,更多相关《可视化表单设计ppt课件(130页珍藏版)》请在金锄头文库上搜索。

1、第第8章章 可视化表单设计可视化表单设计l面向对象程序设计简介面向对象程序设计简介l表单设计概述表单设计概述l表单设计器运用表单设计器运用l数据环境与数据绑定数据环境与数据绑定l常用表单控件常用表单控件l表单集与多重表单表单集与多重表单8.1 面向对象程序设计简介面向对象程序设计简介48.1.1 8.1.1 面向对象程序设计概述面向对象程序设计概述4面向对象程序设计简称面向对象程序设计简称OOPOOPObject-Oriented Object-Oriented ProgrammingProgramming,是当前程序设计的主流方向,是当前程序设计的主流方向,是程序设计在思想上和方法上的一次飞

2、跃。是程序设计在思想上和方法上的一次飞跃。JOOPOOP用用“对象表示各种事物、用象表示各种事物、用“类表示表示对象的象的笼统、用、用“音音讯实现对象之象之间的的联络、用用“方法方法实现对象象处置的置的过程程J采用面向采用面向对象和事件象和事件驱动的的编程方式,将程方式,将对象象看作是数据及可以施加在看作是数据及可以施加在这些数据之上的可些数据之上的可执行的操作所构成的一致体,将整个程序看作是行的操作所构成的一致体,将整个程序看作是相互相互协作而又相互独立的、有任作而又相互独立的、有任务才干的才干的对象象的集合的集合JOOPOOP所做的是所做的是创建所需的各个建所需的各个对象,并按运用象,并按

3、运用系系统的需求建立的需求建立对象之象之间协同任同任务的才干的才干8.1.2 8.1.2 对象与类的概念对象与类的概念41 1对象对象ObjectObject4 对象是一个具有各种属性数据和方法程对象是一个具有各种属性数据和方法程序代码的实体,如命令按钮、文本框、菜单等。序代码的实体,如命令按钮、文本框、菜单等。42 2属性属性PropertyProperty4 对象所具有的各种不同特征被称为对象的属性。对象所具有的各种不同特征被称为对象的属性。在在OOPOOP中,属性实践上是某个对象的各种特征数中,属性实践上是某个对象的各种特征数据。如命令按钮的字体、大小、颜色等据。如命令按钮的字体、大小、

4、颜色等43 3方法方法MethodMethod4 对象的行为和动作被称为对象的方法。在对象的行为和动作被称为对象的方法。在OOPOOP中,方法实践上是对象可以执行并完成相中,方法实践上是对象可以执行并完成相应义务的操作代码集合。应义务的操作代码集合。44 4事件事件EventEvent4 对象可以识别和呼应的动作被称为事件。在对象可以识别和呼应的动作被称为事件。在OOPOOP中,事件是一些预先定义好的特定动作,中,事件是一些预先定义好的特定动作,可由系统触发,在大多数情况下那么由用户的可由系统触发,在大多数情况下那么由用户的操作触发。操作触发。O例例1 1 如以下图是一表单程序如以下图是一表单

5、程序C“退出按退出按钮C 是一个命令按是一个命令按钮,是一个,是一个对象象CGOTFOCUSGOTFOCUS,CLICKCLICKC 是事件,表示得到是事件,表示得到标、鼠、鼠标单击CTHIS.FORECOLOR=RGB(255,0,0)THIS.FORECOLOR=RGB(255,0,0)C FORECOLOR FORECOLOR是属性是属性CTHISFORM.RELEASETHISFORM.RELEASEC RELEASE RELEASE是方法是方法5 5类类ClassClass4在在OOPOOP中,类是一批类似对象的归纳和笼统,是对中,类是一批类似对象的归纳和笼统,是对一批类似对象的共有

6、属性和方法的描画。就一个一批类似对象的共有属性和方法的描画。就一个详细的对象而言,该对象本身只是其所属的某个详细的对象而言,该对象本身只是其所属的某个类中的一个实例类中的一个实例8.1.3 8.1.3 对象与类的特性对象与类的特性41 1封装性封装性4 在在OOPOOP中,对象的属性和方法被封装在单独中,对象的属性和方法被封装在单独的一段源代码中,并且对数据的访问只能经过的一段源代码中,并且对数据的访问只能经过调用该对象本身的方法来进展,对象之间的相调用该对象本身的方法来进展,对象之间的相互作用只能经过音讯的传送来实现。因此,对互作用只能经过音讯的传送来实现。因此,对象是一个完全封装的实体,具

7、有模块独立性,象是一个完全封装的实体,具有模块独立性,运用起来更为方便与平安。运用起来更为方便与平安。2 2层次性层次性 对象是可以加以分类的,并且可在某个类的根对象是可以加以分类的,并且可在某个类的根底上继续分类,类之间的内在联络可用类的层底上继续分类,类之间的内在联络可用类的层次构造来描画。处于上层的类被称为父类,处次构造来描画。处于上层的类被称为父类,处于下层的类被称为子类或派生类。子类是父类于下层的类被称为子类或派生类。子类是父类的详细化、特殊化;父类是子类的笼统化。的详细化、特殊化;父类是子类的笼统化。3 3承继性承继性 对象与类的承继性在对象与类的承继性在OOPOOP中得到了充分的

8、表达。中得到了充分的表达。例如可由某个类生成假设干个对象,这些对象例如可由某个类生成假设干个对象,这些对象将自动具有该类所具有的属性和方法;也可以将自动具有该类所具有的属性和方法;也可以由现有的类派生出新类,该新类将自动具有其由现有的类派生出新类,该新类将自动具有其父类所具有的属性和方法。父类所具有的属性和方法。4 4笼统性笼统性 用用户在在对某个某个对象象进展操作展操作时,可忽略其内部,可忽略其内部的的实现细节,隐藏其复藏其复杂性,因此性,因此对象被象被笼统化了。除此之外,化了。除此之外,“类的概念本身就是的概念本身就是对性性质类似的一批似的一批对象的象的笼统。5 5多态性多态性 多态性是指

9、同类的对象可以有不同的表现方式。多态性是指同类的对象可以有不同的表现方式。在在OOPOOP中,对象的多态性不仅是指同类的对象中,对象的多态性不仅是指同类的对象可以有不同的属性,还可以指同类对象对于一可以有不同的属性,还可以指同类对象对于一样的触发事件可以有不同的反响动作,或对于样的触发事件可以有不同的反响动作,或对于一样的功能具有不同的实现方式等。一样的功能具有不同的实现方式等。8.1.4 Visual FoxPro8.1.4 Visual FoxPro的基类的基类4Visual FoxProVisual FoxPro提供了一系列的根本对象类,提供了一系列的根本对象类,简称基类简称基类4控件控

10、件ControlControl类对象不能包含其他对象,类对象不能包含其他对象,通常是一个图形化的、并能与用户进展交互的通常是一个图形化的、并能与用户进展交互的对象对象4容器容器ContainerContainer类对象可以包含其他对象,类对象可以包含其他对象,用户可以单独地访问和处置容器类对象中所包用户可以单独地访问和处置容器类对象中所包含的任何一个对象含的任何一个对象控件类控件类CheckBox LabelCheckBox LabelComboBox EditBoxComboBox EditBoxCommandButton ImageCommandButton ImageOptionButt

11、on LineOptionButton LineListBox SpinnerListBox SpinnerOLEBound TextBoxOLEBound TextBoxOLEContainer TimerOLEContainer TimerShape HyperLinkShape HyperLink容器类容器类ContainerContainer:可包含恣意控件:可包含恣意控件FormSetFormSet:可包含多个表单、工具栏:可包含多个表单、工具栏FormForm:恣意控件:恣意控件GridGrid:多个表格列:多个表格列ColumnColumn:列标题头:列标题头PageFrameP

12、ageFrame:多个页面:多个页面PagePage:恣意多个控件、容器、自定义对象:恣意多个控件、容器、自定义对象CommandGroupCommandGroup:多个命令按钮:多个命令按钮OptionGroupOptionGroup:多个选项按钮:多个选项按钮ToolBarToolBar:恣意多个控件、容器、页框:恣意多个控件、容器、页框ProjectHookProjectHook:文件与效力程序:文件与效力程序8.1.5 8.1.5 对象的援用对象的援用4对某对象进展操作方法:援用对某对象进展操作方法:援用4援用格式:援用格式:4 . 4 . 4 . 41 1绝对援用绝对援用4 对一个对

13、象的援用是从最外层的容器对象开对一个对象的援用是从最外层的容器对象开场直至该对象的,称为对象的绝对援用。场直至该对象的,称为对象的绝对援用。4如:如:设置以下置以下图表表单中的中的“红色按色按钮的的“标题THISFORM.THISFORM.红色红色.CAPTION=.CAPTION=红色红色 2 2相对援用相对援用4一个对象的援用是从参照关键字开场至该对象一个对象的援用是从参照关键字开场至该对象的,被称为对象的相对援用的,被称为对象的相对援用4PARENTPARENT 本对象的父对象本对象的父对象4THISTHIS 本对象本对象4THISFORMTHISFORM 包含本对象的表单包含本对象的表

14、单4THISFORMSETTHISFORMSET 包含本对象的表单集包含本对象的表单集O例例2 2 对象的援用对象的援用LABLEL1LABLEL1COMMAND1COMMAND1COMMAND2COMMAND2COMMAND3COMMAND3FORM1FORM1F表单表单FORM1FORM1的的INITINIT事件的代码事件的代码F THISMAND1.CAPTION= THISMAND1.CAPTION=设置表单设置表单 F THISMAND2.CAPTION= THISMAND2.CAPTION=设置标签设置标签 F THISFORMMAND3.CAPTION= THISFORMMAND

15、3.CAPTION=退退 出出 F按钮按钮COMMAND1COMMAND1的的CLICKCLICK事件的代码事件的代码F THIS.PARENT.CAPTION= THIS.PARENT.CAPTION=这是第八章例题这是第八章例题22F THIS.PARENT.BACKCOLOR=RGB(200,250,200)THIS.PARENT.BACKCOLOR=RGB(200,250,200)F THISFORM.REFRESH THISFORM.REFRESHF按钮按钮COMMAND2COMMAND2的的CLICKCLICK事件的代码事件的代码F THISFORM.LABEL1.CAPTION=

16、 THISFORM.LABEL1.CAPTION=请点击我一下请点击我一下 F THISFORM.LABEL1.FORECOLOR=RGB(255,0,0)THISFORM.LABEL1.FORECOLOR=RGB(255,0,0)F THIS.PARENT.LABEL1.FONTNAME= THIS.PARENT.LABEL1.FONTNAME=黑体黑体 F THISFORM.REFRESH THISFORM.REFRESHF按钮按钮COMMAND3COMMAND3的的CLICKCLICK事件的代码事件的代码F THISFORM.RELEASE THISFORM.RELEASEF标签标签LA

17、BELLABEL的的CLICKCLICK事件的代码事件的代码F THIS.CAPTION= THIS.CAPTION=您真乖,谢谢!您真乖,谢谢! 8.2 表单设计概述表单设计概述4表单的英文名为表单的英文名为FormForm,是一个可以具有各种属,是一个可以具有各种属性、控件、事件和方法程序的容器对象性、控件、事件和方法程序的容器对象4各种窗口与对话框均为表单的不同表现方式各种窗口与对话框均为表单的不同表现方式4表单往往用来作为数据输入、修正或输出的用表单往往用来作为数据输入、修正或输出的用户界面。户界面。8.2.1 8.2.1 创建表单的途径创建表单的途径4创建表单的各种途径创建表单的各种

18、途径41. 1. 运用表单导游创建表单运用表单导游创建表单4 简单数据维护表单简单数据维护表单42. 2. 运用表单生成器创建表单运用表单生成器创建表单4 快速生成与某个数据有关的表单快速生成与某个数据有关的表单43. 3. 运用表单设计器创建表单运用表单设计器创建表单4 是最常用、最直观的方法是最常用、最直观的方法44. 4. 经过编写程序的方法创建表单经过编写程序的方法创建表单4 要求熟练地掌握面向对象编程的方法与技巧要求熟练地掌握面向对象编程的方法与技巧1. 1. 运用表单导游创建表单运用表单导游创建表单(8.2.4)(8.2.4)4方法:方法:“文件文件/ /新建新建/ /表表单/ /

19、导游游4创建建单表表表表单4例例3 3 用用zgdazgda表表创建一个建一个对zgdazgda表表维护的表的表单4创建一建一对多表多表单4例例4 4 用用图书管理数据管理数据库(Student(Student表、表、BorrowBorrow表表) )创建一个一建一个一对多的表多的表单,分,分页列出学生表列出学生表中每个学生的借中每个学生的借书情况情况2. 2. 表单生成器创建快速表单表单生成器创建快速表单(8.3.3)(8.3.3)4表表单生成器可以方便、快速地生成一个与数据生成器可以方便、快速地生成一个与数据表有关的表表有关的表单4步步骤一:一:创建新表建新表单4方式方式1 1:在:在“工

20、程管理器中,工程管理器中,选择“文档文档/ /表表单/ /新建新建/ /新建表新建表单4方式方式2 2:执行行“文件文件/ /新建新建/ /表表单/ /新建文件菜新建文件菜单命令命令4方式方式3 3:格式:格式:CREATE FORM CREATE FORM 3步步骤二:用生成器生成二:用生成器生成3方式方式1 1:单击“表表单设计器工具器工具栏中的中的“表表单生成器按生成器按钮3方式方式2 2:右:右键单击表表单窗口,在窗口,在弹出的快捷菜出的快捷菜单中中选择“生成器命令生成器命令3方式方式3 3:选择主窗口主窗口“表表单菜菜单的的“快速表快速表单命令命令3例例5 5 用表用表单生成器快速生

21、成一个生成器快速生成一个职工档案表工档案表单3 3用表单设计器创建表单用表单设计器创建表单41 1菜一方式菜一方式4方式方式1 1:在:在“工程管理器中,工程管理器中,选择“文档文档/ /表表单/ /新新建建/ /新建表新建表单4方式方式2 2:执行行“文件文件/ /新建新建/ /表表单/ /新建文件菜新建文件菜单命命令。令。42 2命令方式命令方式4 格式:格式:CREATE FORM CREATE FORM 4表表单文件文件扩展名展名.scx.scx,表,表单备注文件注文件扩展名展名.sct.sct8.2.2 8.2.2 表单的修正与运转表单的修正与运转41 1表表单的修正的修正41 1菜

22、一方式菜一方式4方式方式1 1:在:在“工程管理器工程管理器/ /文档文档选项卡中,卡中,选中中要修正的表要修正的表单,单击“修正按修正按钮4方式方式2 2:执行行“文件文件/ /翻开菜翻开菜单命令,翻开要修命令,翻开要修正的表正的表单文件文件42 2命令方式命令方式4 格式:格式:MODIFY FORM MODIFY FORM 2 2表单的运转表单的运转41 1菜一方式菜一方式4方法方法1 1:在:在“工程管理器工程管理器/ /文档文档选项卡内卡内选中要中要运运转的表的表单,单击“运运转按按钮。4方法方法2 2:执行行“程序程序/ /运运转菜菜单命令,命令,选定要运定要运转的表的表单,单击“

23、运运转按按钮。4方法方法3 3:翻开表:翻开表单,执行行“表表单/ /执行表行表单菜菜单命令,或按命令,或按Ctrl+ECtrl+E组合合键。42 2命令方式命令方式4 格式:格式:DO FORM DO FORM WITH WITH O例例6 6 下面表单的文件名:下面表单的文件名:E8_6E8_6,那么,那么O 修正表单的命令应为:修正表单的命令应为:MODI FORM E8_6MODI FORM E8_6O 运转表单的命令应为:运转表单的命令应为:DO FORM E8_6DO FORM E8_68.2.3 8.2.3 常用属性、事件、方法常用属性、事件、方法41 1规划属性规划属性4Top

24、Top:离顶端的间隔:离顶端的间隔4LeftLeft:离左边的间隔:离左边的间隔4WidthWidth:控件的宽:控件的宽4HeightHeight:控件的高:控件的高4FontnameFontname:字体类型:字体类型4FontsizeFontsize:字体大小:字体大小4BackcolorBackcolor:背景颜色:背景颜色4ForecolorForecolor:前景颜色:前景颜色FAlignmentAlignment:控件中的文本对齐方式:控件中的文本对齐方式FCaptionCaption:显示的标题:显示的标题FAutoSizeAutoSize:能否根据控件内容调整大小:能否根据控

25、件内容调整大小FBorderStyleBorderStyle:边框类型:边框类型FBackStyleBackStyle:对象的背景能否透明:对象的背景能否透明FStatusBarTextStatusBarText:鼠标停在控件上所要显示的文字:鼠标停在控件上所要显示的文字FVisibleVisible:设置对象能否可见:设置对象能否可见F2. 2. 数据属性数据属性FControlSourceControlSource:指定对象绑定的数据源:指定对象绑定的数据源FRowSourceRowSource:指定列表或组合框所绑定的数据:指定列表或组合框所绑定的数据FRowSourceTypeRowS

26、ourceType:列表或组合框所绑定的数据类型:列表或组合框所绑定的数据类型FReadOnlyReadOnly:控件数据的只读属性:控件数据的只读属性FValueValue:控件形状或值:控件形状或值FRecordSource RecordSource 指定与表格绑定的数据源指定与表格绑定的数据源 FRecordSourceType RecordSourceType 指定与表格绑定的数据类型指定与表格绑定的数据类型F3. 3. 其它属性其它属性FNameName:设置对象的名,默许控件类型加数字命名:设置对象的名,默许控件类型加数字命名FEnabledEnabled:设置对象能否可用:设置对

27、象能否可用FTabIndexTabIndex:设置用:设置用TabTab键切换时得到焦点的顺序键切换时得到焦点的顺序FTabStopTabStop:设置用:设置用TABTAB键切换时能否可以得到焦点键切换时能否可以得到焦点F属性的设置方法属性的设置方法F用属性窗口进展设置用属性窗口进展设置F在程序中用赋值语句进展赋值在程序中用赋值语句进展赋值F获得属性值的方法获得属性值的方法F用赋值语句获得属性值用赋值语句获得属性值F如设置表单的如设置表单的HeightHeightF(1)(1)方法一:在表单的初始化方法一:在表单的初始化(Init)(Init)事件中,写入事件中,写入代码,如图一所示代码,如

28、图一所示F(2)(2)方法二:用属性窗口进展赋值,如图二所示方法二:用属性窗口进展赋值,如图二所示图一图一图二图二(3)(3)获得属性值获得属性值A=thisform.heightA=thisform.height44. 4. 方法方法4RefreshRefresh:刷新该对象,即数据更新:刷新该对象,即数据更新4ReleaseRelease:释放该对象:释放该对象4SetFocusSetFocus:设置该对象得焦点:设置该对象得焦点4Move(a,b)Move(a,b):把该对象移到指定的位置:把该对象移到指定的位置(a,b)(a,b)4HideHide:对象隐藏:对象隐藏4ShowShow

29、:对象显示:对象显示4如下面的援用如下面的援用4 Thisform.release Thisform.release4 Thisform.text1.setfocus Thisform.text1.setfocus4 Thisform.shape1.move(100,50) Thisform.shape1.move(100,50)4 Thisform.grid1.refresh Thisform.grid1.refresh4事件事件4LoadLoad:对象加载时发生:对象加载时发生4InitInit:对象初始化时发生,发生在:对象初始化时发生,发生在LoadLoad之后之后4ActivateA

30、ctivate:对象激活时发生:对象激活时发生4ClickClick:鼠标单击该对象时发生:鼠标单击该对象时发生4DblClickDblClick:鼠标双击该对象时发生:鼠标双击该对象时发生4GotFocusGotFocus:对象得到焦点时发生:对象得到焦点时发生4LostFocusLostFocus:对象失去焦点时发生:对象失去焦点时发生4KeyPressKeyPress:按下键盘时发生:按下键盘时发生4MouseDownMouseDown:鼠标按下时发生:鼠标按下时发生4DestroyDestroy:对象释放时发生:对象释放时发生O例例7 7 建立如下两个表单建立如下两个表单E8_7.sc

31、xE8_7_2.scx3表单一:表单一:Form1Form13LoadLoad事件事件3 messagebox( messagebox(这是这是LOADLOAD事件事件,64,e8_7),64,e8_7)3InitInit事件事件3 messagebox( messagebox(这是这是INITINIT事件事件,64,e8_7),64,e8_7)3ActivateActivate事件事件3 messagebox( messagebox(这是这是ACTIVATEACTIVATE事件事件,64,e8_7),64,e8_7)3RefreshRefresh事件事件3 messagebox( messa

32、gebox(这是这是 REFRESH REFRESH 事件事件,64,e8_7),64,e8_7)3GotFocusGotFocus事件事件3 messagebox( messagebox(这是这是 GOTFOCUS GOTFOCUS 事件事件,64,e8_7),64,e8_7)3ClickClick事件事件3 messagebox( messagebox(这是这是 CLICK CLICK 事件事件,64,e8_7),64,e8_7)FKeyPressKeyPress事件事件F LPARAMETERS nKeyCode, nShiftAltCtrl LPARAMETERS nKeyCode,

33、nShiftAltCtrlF messagebox( messagebox(这是这是KEYPRESSKEYPRESS事件事件, ,他按的是:他按的是:+chr(nKeyCode),64,e8_7)+chr(nKeyCode),64,e8_7)FHideHide事件事件F messagebox( messagebox(这是这是HIDEHIDE事件事件,64,e8_7),64,e8_7)FReleaseRelease事件事件F messagebox( messagebox(这是这是 RELEASE RELEASE 事件事件,64,e8_7),64,e8_7)FLostFocusLostFocus事

34、件事件F messagebox( messagebox(这是这是 LOSTFOCUS LOSTFOCUS 事件事件,64,e8_7),64,e8_7)FDeactivateDeactivate事件事件F messagebox( messagebox(这是这是 DEACTIVATE DEACTIVATE 事件事件,64,e8_7),64,e8_7)FDestroyDestroy事件事件F messagebox( messagebox(这是这是 DESTORY DESTORY 事件事件,64,e8_7),64,e8_7)FUnloadUnload事件事件F messagebox( messageb

35、ox(这是这是UNLOADUNLOAD事件事件,64,e8_7),64,e8_7)FCommand1Command1的的ClickClick事件事件F thisform.hide thisform.hideF do form e8_7_2 do form e8_7_23表单二:表单二:Form2Form23DblClickDblClick事件事件3 messagebox( messagebox(这是这是DBLCLICKDBLCLICK事件事件,64,e8_7_2),64,e8_7_2)3RefreshRefresh事件事件3 messagebox( messagebox(这是这是 REFRES

36、H REFRESH 事件事件,64,e8_7_2),64,e8_7_2)3Command1Command1的的ClickClick事件事件3 thisform.refresh thisform.refresh3Command2Command2的的ClickClick事件事件3 e8_7.release e8_7.release3 *thisform.release *thisform.release3 release thisform release thisform3当运转当运转E8_7.scxE8_7.scx时,下面四个对话框出现的先后顺时,下面四个对话框出现的先后顺序序(1)(2)(3)

37、(4)3当当单击“Show“Show表表单时,即,即隐藏藏e8_7e8_7,激活,激活e8_7_2e8_7_2时,下面四个,下面四个对话框不会出框不会出现的是的是(1)(2)(3)(4)3退出退出E8_7_1.scxE8_7_1.scx时,下面三个对话框出现的先后顺序时,下面三个对话框出现的先后顺序(1)(2)(3)J注注释:MessageBoxMessageBoxJ用法:用法:t= MessageBox(t= MessageBox(提示内容提示内容, ,类型型, ,提示框提示框标题) )J“类型型设置置J0 “0 “确定按确定按钮J1 “1 “确定、确定、“取消按取消按钮J2 “2 “放弃、

38、放弃、“重重试、“忽略按忽略按钮J3 “3 “是、是、“否、否、“取消按取消按钮J4 “4 “是、是、“否按否按钮J5 “5 “重重试、“取消按取消按钮F16 “16 “停停顿图标F32 “32 “疑疑问图标F48 “48 “惊惊叹图标F64 “64 “信息信息图标F0 0 焦点在第一个按焦点在第一个按钮F256 256 焦点在第一个按焦点在第一个按钮F512 512 焦点在第一个按焦点在第一个按钮F上面三上面三类可以求和可以求和3前往值前往值31 1 确定确定32 2 取消取消33 3 放弃放弃34 4 重试重试35 5 忽略忽略36 6 是是37 7 否否8.3 8.3 表单设计器的运用表

39、单设计器的运用48.3.1 8.3.1 表表单设计器的启器的启动4方式方式1 1:单击“常用工具常用工具栏的的“新建按新建按钮,在,在“新建新建对话框中框中选定定“表表单,再,再单击“新建文件新建文件按按钮。4方式方式2 2:在:在“工程管理器中,工程管理器中,选择“文档文档/ /表表单/ /新新建建/ /新建表新建表单4方式方式3 3:执行行“文件文件/ /新建新建/ /表表单/ /新建文件菜新建文件菜单命命令。令。4方式方式4 4:在命令窗口:在命令窗口执行行“CREATE FORM “CREATE FORM 命令。命令。8.3.2 8.3.2 表单设计工具表单设计工具41 1表单设计器工

40、具栏表单设计器工具栏42 2表单控件工具栏表单控件工具栏43 3规划工具栏规划工具栏44 4属性窗口属性窗口45 5代码编辑窗口代码编辑窗口41 1表单设计器工具栏表单设计器工具栏设置置TAB键次次序序数数据据环境境属属性性窗窗口口代代码窗窗口口表表单控控件件工工具具栏调色色板板工工具具栏规划划工工具具栏表表单生生成成器器自自动格格式式42 2表单控件工具栏表单控件工具栏选定定按按钮查看看类标签文文本本框框编辑框框命命令令按按钮命命令令按按钮组选项按按钮组复复选框框组合合框框列列表表框框微微调控控件件表表格格图像像计时器器页框框ActiveX控控件件ActiveX绑定定控控件件线条条外外形形容

41、容器器分分别器器超超级链接接表表单生生成成器器按按钮锁定定3规划工具栏规划工具栏4属性窗口属性窗口5代码编辑窗口代码编辑窗口8.3.4 8.3.4 用表单设计器设计表单用表单设计器设计表单4表单设计器创建与设计表单的步骤表单设计器创建与设计表单的步骤4启动表单设计器启动表单设计器4必要时,为表单指定数据源必要时,为表单指定数据源4添加所需的控件,并对控件进展合理规划添加所需的控件,并对控件进展合理规划4为表单和各控件设置有关属性为表单和各控件设置有关属性4为表单和控件的一些特定事件编写程序代码为表单和控件的一些特定事件编写程序代码4保管并运转表单保管并运转表单O例例8 知定期存款满半年的月利率

42、为知定期存款满半年的月利率为0.221%,满一,满一年后的月利率为年后的月利率为0.27%,满两年后的月利率为,满两年后的月利率为0.31%,满三年的月利率为,满三年的月利率为0.36%,缺乏半年的月,缺乏半年的月利率为利率为0.123%,设计一表单用于计算本金之和,小,设计一表单用于计算本金之和,小数点后保管两位数点后保管两位8.4 数据环境与数据绑定数据环境与数据绑定48.4.1 8.4.1 数据环境数据环境4数据环境泛指创建表单或表单集时所运用的数数据环境泛指创建表单或表单集时所运用的数据源。数据环境也是一个对象,包括与表单或据源。数据环境也是一个对象,包括与表单或表单集相关的数据表、视

43、图以及表之间的关系表单集相关的数据表、视图以及表之间的关系等。等。41 1启启动数据数据环境境设计器器4方式方式1 1:单击“表表单设计器工具器工具栏上的上的“数据数据环境按境按钮4式式2 2:主菜:主菜单“显示示/“/“数据数据环境命令境命令4式式3 3:右:右击“表表单设计器窗口,器窗口,选择快捷菜快捷菜单中的中的“数据数据环境命令境命令42 2向数据向数据环境添加表或境添加表或视图4方式方式1 1:主菜:主菜单“数据数据环境境/“/“添加,再在添加,再在弹出出对话框中添加框中添加4方式方式2 2:右:右击“数据数据环境境设计器,器,选择“添加添加,再在,再在弹出出对话框中添加框中添加43

44、 3在数据在数据环境中境中设置表置表间关系关系4设置方法与参照完好性置方法与参照完好性设置方法一置方法一样8.4.2 8.4.2 数据绑定数据绑定4数据绑定是指将表单中的控件与某个数据源联数据绑定是指将表单中的控件与某个数据源联络起来络起来4由控件的由控件的ControlSource属性来指定与其相联属性来指定与其相联络的数据源,实现该控件与数据源的数据绑定络的数据源,实现该控件与数据源的数据绑定4与数据源及数据绑定有关的属性与数据源及数据绑定有关的属性4 属性属性 阐明阐明4 ControlSource ControlSource 指定与控件绑定的数据源指定与控件绑定的数据源4 Record

45、Source RecordSource 指定与表格绑定的数据源指定与表格绑定的数据源 4 RecordSourceType RecordSourceType 与表格绑定的数据类型与表格绑定的数据类型4 RowSource RowSource 与组合框或列表框的数据与组合框或列表框的数据源源4 RowSourceType RowSourceType 与组合或列表框的数据类与组合或列表框的数据类型型8.4.3 8.4.3 向表单添加字段向表单添加字段4用用户可从可从“数据数据环境境设计器、器、“工程管理器工程管理器或或“数据数据库设计器窗口中直接将字段、表或器窗口中直接将字段、表或视图拖入当前的表

46、拖入当前的表单,系,系统将自将自动产生相生相应的的控件并自控件并自动实现该控件与控件与对应字段的数据字段的数据绑定定4默默许规那么那么4 数数值型:文本框型:文本框 表:表: 表格表格4 字符型:文本框字符型:文本框 视图: 表格表格4 逻辑型:复型:复选框框 通用型:通用型:ActiveXActiveX控控件件4 备注型:注型:编辑框框4可在可在“选项对话框中的框中的“字段映射字段映射选项卡中卡中进展展设置置4例例9 9 用数据绑定的方法建立一个表单对用数据绑定的方法建立一个表单对zgdazgda表进展维护表进展维护4例例10 10 用数据绑定的方法建立一个表单对图书用数据绑定的方法建立一个

47、表单对图书管理数据库进展维护管理数据库进展维护8.5 常用表单控件常用表单控件48.5.1 8.5.1 标签与命令按与命令按钮41 1标签4 标签LabelLabel是一种能在表是一种能在表单上上显示文本示文本的控件,常用来的控件,常用来显示提示信息或示提示信息或阐明文字明文字4常常见属性属性4 Name Name:缺省:缺省为Label1Label1,Label2Label2,4 Caption Caption:标题4 AutoSize AutoSize:为.T.T.时可以自可以自动调整大小整大小 FontSize FontSize:字体大小:字体大小 FontName FontName:字

48、体名:字体名 FontBold FontBold:设置粗体:设置粗体 FontItalic FontItalic:设置斜体:设置斜体 BackStyle BackStyle:设置背景方式:设置背景方式 ForeColor ForeColor:设置前风光:设置前风光 BackColor BackColor:设置背风光:设置背风光 Alignment Alignment:设置文字对齐方式:设置文字对齐方式 WordWrap WordWrap:文天性否可以自动换行:文天性否可以自动换行 Top Top:距上的间隔:距上的间隔 Left Left:距左边的间隔:距左边的间隔 Height Height

49、:高度:高度 Width Width:宽度:宽度例例11 11 设计一表单用于显示当前鼠标的位置设计一表单用于显示当前鼠标的位置(1)(1)创建表单创建表单Form1Form1 Form1.Width 400 Form1.Width 400 Form1.Height 300 Form1.Height 300 Form1.AutoCenter .t. Form1.AutoCenter .t. Form1.Caption Form1.Caption 标签设计标签设计(2)(2)添加标签添加标签Label1 Label1 Label1.Alignment 1 & Label1.Alignment 1

50、 &右靠右靠 Label1.AutoSize .t. Label1.AutoSize .t. Label1.FontName Label1.FontName 黑体黑体 Label1.BackStyle 0 & Label1.BackStyle 0 &透明透明 Label1.FontSize 24 Label1.FontSize 24(3)(3)添加其它三个标签添加其它三个标签Label2Label2、Label3Label3、Label4Label4 方法:复制方法:复制 粘贴粘贴(4)(4)设置置4 4个个标签的的标题 Label1.Caption X= Label1.Caption X=

51、Label2.Caption 100 Label2.Caption 100 Label3.Caption Y= Label3.Caption Y= Label4.Caption 100 Label4.Caption 100 (5)(5)编写写Form1Form1的的MouseMoveMouseMove事件代事件代码 LPARAMETERS nButton,nShift,nXCoord,nYCoord LPARAMETERS nButton,nShift,nXCoord,nYCoord Thisform.label2.caption=str(nXCoord) Thisform.label2.ca

52、ption=str(nXCoord) thisform.label4.caption=str(nYCoord) thisform.label4.caption=str(nYCoord)阐明:明:nButton:1nButton:1左左键、22右右键、44中中键 nShift:1Shift nShift:1Shift、2Ctrl2Ctrl、4Alt 4Alt nXCoord: X nXCoord: X向的坐向的坐标,以像素,以像素为单位位 nYCoord: Y nYCoord: Y向的坐向的坐标,以像素,以像素为单位位2 2命令按钮命令按钮4命令按钮命令按钮CommandbuttonComman

53、dbutton用于在单击或按下用于在单击或按下后完成某个特定的控制操作,其操作代码通常是后完成某个特定的控制操作,其操作代码通常是为其为其ClickClick事件编写的程序代码事件编写的程序代码4常见属性常见属性4 Caption: Caption: 标题标题4 Enabled: Enabled: 为为.T.T.时可用形状时可用形状4 Default: Default: 为为.T.T.时呼应时呼应EnterEnter键键4 Picture: Picture: 按钮嵌入图片按钮嵌入图片4 DisabledPicture: DisabledPicture: 失效时显示的失效时显示的BMPBMP文件

54、文件4 Cancel: ESC Cancel: ESC键呼应键呼应ClickClick事件事件4 DownPicture: DownPicture: 按钮按下时显示的按钮按下时显示的BMPBMP文件文件 Visible: Visible: 可见与否可见与否常用事件常用事件 Click Click DblClick DblClick常用方法常用方法 SetFocus SetFocusO例例12 12 下面表单三个命令按钮,其中两个隐藏,下面表单三个命令按钮,其中两个隐藏,经过第一个按钮激活另两个,然后经过这个两按经过第一个按钮激活另两个,然后经过这个两按钮来挪动和退出表单钮来挪动和退出表单F(1

55、)(1)创建表单创建表单Form1Form1F Width 400 Width 400F Height 250 Height 250F Windowstate 0 & Windowstate 0 &普通普通F(2)(2)添加三个命令按钮添加三个命令按钮: Command1: Command1、Command2Command2、Command3Command3F Command1.visible .f. Command1.visible .f.F Command2.visible .f. Command2.visible .f.F(3)(3)设置设置Form1Form1、Command1Comm

56、and1、Command2Command2、Command3Command3的的CaptionCaption Form1.Caption Form1.Caption 命令按钮设计命令按钮设计 Command1.Caption Command1.Caption 退出退出(X)(X) Command2.Caption Command2.Caption 显示其它按钮显示其它按钮(S)(S) Command3.Caption Command3.Caption 挪动表单挪动表单(M)(F(1)(1)创建表单,并添加一文本框创建表单,并添加一文本框F(2)(2)设置属性设置属性F Form1 Form1的

57、的Caption: Caption: 文本框设计文本框设计F Text1 Text1的的FontSize: 28FontSize: 28F Text1 Text1的的BackStyle: 1BackStyle: 1F(3)(3)编写代码编写代码F *Form1 *Form1的的LoadLoadF Public flag Public flagF flag=.t. flag=.t. *Text1 *Text1的的ClickClick if flag if flag thisform.text1.value=date() thisform.text1.value=date() thisform.t

58、ext1.dateformat=12 &YMD thisform.text1.dateformat=12 &YMD thisform.text1.datemark=. & thisform.text1.datemark=. &分隔分隔 flag=.f. flag=.f. else else thisform.text1.value=time() thisform.text1.value=time() flag=.t. flag=.t. endif endif3 3编辑框编辑框3常用属性常用属性3ControlSource: ControlSource: 编辑框的数据源编辑框的数据源3NullD

59、isplay: NullNullDisplay: Null的显示的显示3ReadOnly: ReadOnly: 能否只读能否只读3方法方法3SetFocusSetFocus3RefreshRefresh3事件事件3InteractiveChange: InteractiveChange: 交互式改动时发生交互式改动时发生3ProgramicChange: ProgramicChange: 经过赋值语句改动时发生经过赋值语句改动时发生O例例14 14 为为zgdazgda设计查找姓名的表单设计查找姓名的表单F(1)(1)创建表单,添加两个标签、两个命令按钮、创建表单,添加两个标签、两个命令按钮、

60、一个文本框、一个编辑框一个文本框、一个编辑框F(2)(2)设置属性值、设计规划设置属性值、设计规划F Label1.Caption Label1.Caption 请输入姓氏请输入姓氏: :F Label2.Caption Label2.Caption 查找结果查找结果: :F Command1.Caption Command1.Caption 查找查找F Command2.Caption Command2.Caption 退出退出F(3)(3)编写代码编写代码F *Form1 *Form1的的ActivateActivateF set exact off set exact offF this

61、form.text1.setfocus thisform.text1.setfocusF *command1 *command1的的ClickClickthisform.edit1.value=thisform.edit1.value=xs=alltrim(thisform.text1.value)xs=alltrim(thisform.text1.value)use zgdause zgdak=0k=0scan for scan for 姓名姓名=xs =xs thisform.edit1.value=thisform.edit1.value+thisform.edit1.value=thi

62、sform.edit1.value+姓名姓名+chr(13)+chr(13) k=k+1 k=k+1endscanendscanif k=0if k=0 messagebox( messagebox(查无此姓!查无此姓!,0,0,查找失败查找失败)endifendifthisform.text1.setfocusthisform.text1.setfocusthisform.text1.value=thisform.text1.value=useuse8.5.3 8.5.3 列表框与组合框列表框与组合框J列表框列表框ListBoxListBox任何时候都显示其列表,任何时候都显示其列表,用户只

63、能对列表内容进展选择而不能输入和修用户只能对列表内容进展选择而不能输入和修正;而组合框正;而组合框ComboBoxComboBox那么兼有列表框与那么兼有列表框与文本框的功能文本框的功能J可用生成器来设置列表框或组合框的各项主要可用生成器来设置列表框或组合框的各项主要属性属性J经过对列表框或组合框的经过对列表框或组合框的RowSourceTypeRowSourceType属性属性和和RowSourceRowSource属性进展设置,可以将不同数据属性进展设置,可以将不同数据源中的数据自动添加到列表框或组合框中源中的数据自动添加到列表框或组合框中1 1列表框列表框3主要属性主要属性3Column

64、Count: ColumnCount: 列表框的列数列表框的列数3ControlSource: ControlSource: 绑定的数据源绑定的数据源3MoverBars: MoverBars: 在左侧能否显示挪动钮栏在左侧能否显示挪动钮栏3MultiSelect: MultiSelect: 一次能否可以选择多列一次能否可以选择多列3RowSource: RowSource: 列表中数据来源列表中数据来源3RowSourceType: RowSourceType: 数据源的类型数据源的类型3Value: Value: 列表框的值列表框的值3Displayvalue: Displayvalue:

65、 高亮显示当前的值高亮显示当前的值3RequeryRequery方法方法: : 当数据源变化时更新控件当数据源变化时更新控件3InteractiveChangeInteractiveChange事件:当值发生改动时发生事件:当值发生改动时发生O例例15 15 创建一表单,运用列表框查询学生的借创建一表单,运用列表框查询学生的借书情况书情况F创建新表单,翻开表单设计器创建新表单,翻开表单设计器F添加如下控件添加如下控件F 表格、标签、文本框、命令按钮、图像按钮、表格、标签、文本框、命令按钮、图像按钮、列表框列表框F调整规划、大小、字体调整规划、大小、字体F Label1 Label1的的Capt

66、ion Caption 姓名:姓名:F Command1 Command1的的Caption Caption 退出退出(X)(8.5.4 8.5.4 复选框与选项按钮组复选框与选项按钮组4复复选框框CheckBoxCheckBox又称多又称多项选择框,只需被框,只需被选定与未被定与未被选定两种形状定两种形状4主要属性主要属性4 value value:11选中,中,00未未选中中4选项按按钮组OptionGroupOptionGroup又称又称单项选择按按钮组4主要属性主要属性4ButtonCount: ButtonCount: 选项按按钮的数目的数目4Value: Value: 指示哪个按指

67、示哪个按钮被被选中中4主要方法主要方法4ClickClickO例例17 17 设计一表单,运用复选框与选项按组进展设计一表单,运用复选框与选项按组进展字体设置,如下图字体设置,如下图8.5.5 8.5.5 命令按钮组命令按钮组J命令按钮组命令按钮组CommandGroupCommandGroup控件同时是一种控件同时是一种容器对象,它可以包含假设干个命令按钮,并容器对象,它可以包含假设干个命令按钮,并方便对它们的一致管理方便对它们的一致管理J重要属性与方法重要属性与方法J ButtonCount: ButtonCount: 命令按钮组中按钮数目命令按钮组中按钮数目J Enabled: Enab

68、led: 设置某按钮能否可用设置某按钮能否可用J Value: Value: 选择按钮组中按钮位置选择按钮组中按钮位置J Addobject: Addobject: 运转中添加按钮的方法运转中添加按钮的方法J Removeobject: Removeobject: 运转中删除按钮的方法运转中删除按钮的方法O例例18 18 用命令按钮组实现对用命令按钮组实现对zgdazgda表的阅读表的阅读 8.5.6 8.5.6 计时器计时器3计时器计时器TimerTimer控件能在设定的时间间隔到控件能在设定的时间间隔到达时地自动执行其达时地自动执行其TimerTimer事件代码。计时器控事件代码。计时器控

69、件在表单设计器中显示为一个时钟小图标,在件在表单设计器中显示为一个时钟小图标,在表单运转时那么不可见,常用来作一些后台的表单运转时那么不可见,常用来作一些后台的触发计时处置触发计时处置3重要属性与事件重要属性与事件3 Interval: Interval: 触发触发TimerTimer事件的周期事件的周期3 Timer: Timer: 要周期执行的动作要周期执行的动作O例例19 19 设计一表单,用计时器实现一小球沿设计一表单,用计时器实现一小球沿正弦曲线运动正弦曲线运动8.5.7 8.5.7 表格表格3表格表格GridGrid控件可用来在表单中显示数据表控件可用来在表单中显示数据表中的记录。

70、假设干列中的记录。假设干列ColumnColumn组成,列由列组成,列由列标题标题HeaderHeader和列控件组成和列控件组成31 1由数据环境创建表格见教材由数据环境创建表格见教材212212页页32 2用表格生成器创建表格见教材用表格生成器创建表格见教材213213页页33. 3. 动态绑定表格动态绑定表格( (见下例见下例) )3主要属性主要属性3RecordsourceType: RecordsourceType: 数据类型数据类型3Recordsource: Recordsource: 数据源数据源3主要事件主要事件3AfterRowColChangeAfterRowColCha

71、nge:改动之后发生:改动之后发生3BeforeRowColChangeBeforeRowColChange:改动之前发生:改动之前发生O例例20 20 设计一表单用于动态阅读恣意表的数据设计一表单用于动态阅读恣意表的数据8.5.8 8.5.8 页框页框3页框页框(PageFrame)(PageFrame)是可以包含多个页面是可以包含多个页面(Page)(Page)的容器类控件,在表单上添加页框控件可用来的容器类控件,在表单上添加页框控件可用来生成含有多个选项卡的对话框等生成含有多个选项卡的对话框等3重要属性重要属性3TabsTabs:页面选项卡能否可见:页面选项卡能否可见3TabStyleT

72、abStyle:页面选项卡的类型:页面选项卡的类型3PageCountPageCount:页面数:页面数3ActivePageActivePage:指定当前的活动页面:指定当前的活动页面O例例21 21 用页框实现对用页框实现对zgdazgda、图书管理的阅读与修、图书管理的阅读与修正,第一个页面对正,第一个页面对zgdazgda表进展维护、第二个页面表进展维护、第二个页面对图书管理数据库进展维护对图书管理数据库进展维护8.5.9 ActiveX8.5.9 ActiveX与与ActiveXActiveX绑定控件绑定控件3添加添加ActiveXActiveX控件,自控件,自动翻开一个翻开一个“插

73、入插入对象象对话框框3“新建新建: : 新建一个新建一个OLEOLE对象插入表象插入表单3“由文件由文件创建建: : 由磁由磁盘文件作文件作为OLEOLE对象插入表象插入表单3“插入控件插入控件: : 将将ActiveXActiveX控件添加到表控件添加到表单3将通用型字段与表将通用型字段与表单中的中的ActiveXActiveX绑定控件定控件进展展绑定,就能定,就能对通用型字段中的通用型字段中的OLEOLE对象象进展操作展操作3对ActiveXActiveX的操作方法与所的操作方法与所绑定控件定控件类型有关,型有关,如如绑定是音定是音频控件,那么控件,那么Doverb(0)Doverb(0)

74、方法是播放方法是播放O例例22 22 用数据绑定的方法开发本人的音乐播放器:用数据绑定的方法开发本人的音乐播放器:创建数据表存放所要播放的音乐,设计一表单用创建数据表存放所要播放的音乐,设计一表单用于播放该数据表中的音乐于播放该数据表中的音乐8.5.10 8.5.10 其他控件其他控件31 1线条线条3 线条线条LineLine控件控件: : 在表单上绘制直线与斜线在表单上绘制直线与斜线3主要属性主要属性3 BorderWidth BorderWidth:设置线条粗细:设置线条粗细3 BorderColor BorderColor:设置线条的颜色:设置线条的颜色3 BorderStyle Bo

75、rderStyle:指定线条的风格,照实线:指定线条的风格,照实线3 LineSlant LineSlant:指定为斜线:指定为斜线32 2外形外形3 外形外形ShapeShape控件:在表单上绘制矩形、控件:在表单上绘制矩形、正方形、圆或椭圆等正方形、圆或椭圆等3主要属性主要属性3 BackColor BackColor:边境颜色:边境颜色3 FillColor FillColor:填充颜色:填充颜色3 FillStyle FillStyle:填充线的类型:填充线的类型3 Curvature Curvature:弯曲程度:弯曲程度1-991-9933 3图像像3 图像像ImageImage控

76、件:在表控件:在表单上添加上添加图像像(BMP(BMP、ICOICO、GIFGIF、JPG)JPG)3主要属性主要属性3 Picture Picture:设置在控件上所加置在控件上所加载的的图片片3 BackStyle BackStyle:指定:指定图像的背景像的背景类型型3 Stretch Stretch:设置置图像的像的显示方式示方式(0(0按控件大小按控件大小显示、示、22按控件大小自按控件大小自动调整整图像大小、像大小、11等等比例比例显示示) )34 4容器容器3 容器容器(Container)(Container)可以包含不同类型的控件,包可以包含不同类型的控件,包括其他容器。在表

77、单中运用容器控件的益处在于,括其他容器。在表单中运用容器控件的益处在于,可将容器内包含的一切控件作为一个整体来处置可将容器内包含的一切控件作为一个整体来处置3留意留意3 容器上的控件必需是新建控件容器上的控件必需是新建控件35 5超级链接超级链接3 超级链接超级链接HyperlinkHyperlink控件用来协助在表单上控件用来协助在表单上创建一个热键,以便单击后迅速跳转到一个目的创建一个热键,以便单击后迅速跳转到一个目的网址上网址上3重要方法重要方法3 NavigateTo NavigateTo:指定要链接到的对象:指定要链接到的对象3 GoBack GoBack:指定的链接对象后退:指定的

78、链接对象后退3 GoFoward GoFoward:指定的链接对象前进:指定的链接对象前进36 6微调控件微调控件3 微调控件微调控件(Spinner)(Spinner):用于在表单中接受给定范:用于在表单中接受给定范围内的数值输入,可以经过键盘与鼠标接受输入值围内的数值输入,可以经过键盘与鼠标接受输入值3主要属性与事件主要属性与事件3 Incerment Incerment:每次单击时添加或减少的数值:每次单击时添加或减少的数值3 KeyboardHighValue KeyboardHighValue:能键入的最大值:能键入的最大值3 KeyboardLowValue KeyboardLow

79、Value:能键入的最小值:能键入的最小值3 SpinnerHighValue SpinnerHighValue:单击向上按钮的上限值:单击向上按钮的上限值3 SpinnerLowValue SpinnerLowValue:单击向下按钮的下限值:单击向下按钮的下限值3 UpClick UpClick:单击向上按钮所要呼应的事件:单击向上按钮所要呼应的事件3 DownClick DownClick:单击向下按钮所要呼应的事件:单击向下按钮所要呼应的事件4例例17 微调按钮的运用微调按钮的运用8.6 表单集与多重表单表单集与多重表单38.6.1 8.6.1 表单集表单集3 表单集表单集FormSe

80、tFormSet是一个包含一个或多个表是一个包含一个或多个表单的容器。当运转一个表单集时,其中包含的一单的容器。当运转一个表单集时,其中包含的一切表单都将被加载和运转,屏幕上将同时出现多切表单都将被加载和运转,屏幕上将同时出现多个对应的表单窗口个对应的表单窗口3例例23 23 用表单集显示图书管理数据库中的用表单集显示图书管理数据库中的StudentStudent与与BorrowBorrow数据表中记录数据表中记录8.6.2 8.6.2 多重表单多重表单31 1单文档界面和多文档界面单文档界面和多文档界面32 2不同类型的表单不同类型的表单3(1)(1)子表单子表单 3不能移到父表单外不能移到

81、父表单外3父表单最小化时,子表单也最小化父表单最小化时,子表单也最小化3子表单最小化后停在父表单的底部子表单最小化后停在父表单的底部3(2)(2)浮动表单浮动表单3可以移到父表单之外可以移到父表单之外3父表单最小化时,子表单也最小化父表单最小化时,子表单也最小化3子表单最小化后停在桌面的底部子表单最小化后停在桌面的底部F(3)(3)顶层表单顶层表单F独立表单,或独立表单,或MDIMDI的父表单的父表单F能显示在能显示在WindowsWindows义务栏中义务栏中F3 3表单类型的指定表单类型的指定FShowWindowShowWindow:1-1-子表单、子表单、2-2-顶层表单、顶层表单、0

82、-VFP0-VFP主主窗口中的子表单窗口中的子表单FDesktopDesktop:设置子表单为浮动表单:设置子表单为浮动表单FMDIFormMDIForm:设置子表单最大化后与父表单融为一:设置子表单最大化后与父表单融为一体体F留意留意F 不能在父表单中不能在父表单中LoadLoad与与InitInit事件中激活子表事件中激活子表单单O例例24 24 创建创建MDIMDI表单,用于阅读表单,用于阅读zgdazgda、studentstudent、borrowborrow的记录的记录O设计要点设计要点O父表单的父表单的MDIFormMDIForm属性设置为属性设置为.T.T.O父表单的父表单的S

83、howWindowShowWindow属性设置为属性设置为2 2O子表单的子表单的MDIFormMDIForm属性设置为属性设置为.T.T.O子表单的子表单的ShowWindowShowWindow属性设置为属性设置为1 141. 文本框、标签、命令按钮的运用文本框、标签、命令按钮的运用4例例8 知定期存款满半年的月利率为知定期存款满半年的月利率为0.221%,满一,满一年后的月利率为年后的月利率为0.27%,满两年后的月利率为,满两年后的月利率为0.31%,满三年的月利率为,满三年的月利率为0.36%,缺乏半年的月,缺乏半年的月利率为利率为0.123%,设计一表单用于计算本金之和,设计一表单

84、用于计算本金之和,小数点后保管两位小数点后保管两位表单小结表单小结42. 2. 组合框、复选框、选项按钮组、微调按钮的运用组合框、复选框、选项按钮组、微调按钮的运用4例例25 25 设计一表单对字体进展设置,组合框设置字设计一表单对字体进展设置,组合框设置字体名,复选框设置字形,选项按钮组设置字体颜色,体名,复选框设置字形,选项按钮组设置字体颜色,标签显示所要设置的字体标签显示所要设置的字体4设计要点设计要点4组合框的数据类型是数组,数组内容是字体名组合框的数据类型是数组,数组内容是字体名4选定组合框中的不同内容时,引发选定组合框中的不同内容时,引发InteractiveChangeInter

85、activeChange事件事件4选项按钮单击选项按钮单击(Click)(Click)时,假设第一个单项选择按钮时,假设第一个单项选择按钮被选中,那么选项按钮组的值为被选中,那么选项按钮组的值为1 1,其他类推,其他类推4复选按钮被选中,那么其值为复选按钮被选中,那么其值为1 1F用鼠标添加微调器的值时,会引发用鼠标添加微调器的值时,会引发UpClickUpClick事件;减事件;减少其值时,会引发少其值时,会引发DownClickDownClick的值;用键盘修正完成的值;用键盘修正完成后,会引发后,会引发LostFocusLostFocus事件,因此,要编写这三个事事件,因此,要编写这三个

86、事件的代码件的代码43.3.页框、表格、列表框、框、表格、列表框、组合框、合框、图像、数据像、数据环境境的运用的运用4例例26 26 设计一表一表单完成完成对“图书管理数据管理数据库的的查找,找,对zgdazgda表表实现查找、修正、添加、找、修正、添加、删除。要求除。要求(1)(1)用用页框框实现,(2)(2)用列表框用列表框实现按姓名按姓名对zgdazgda实现查找;找;(3)(3)用用选项按按钮与与组合框合框实现按姓名、或按学号按姓名、或按学号查找。找。如以下如以下图所示所示4设计要点要点4从数据从数据环境直接把字段拖入到表境直接把字段拖入到表单中,可以中,可以实现字字段与文本框段与文本

87、框绑定定4列表框列表框经过RowSourceTypeRowSourceType与与RowSourceRowSource属性与属性与环境境数据数据绑定定F选择列表框中的数据时,引发选择列表框中的数据时,引发InteractiveChangeInteractiveChange事事件,此时只需刷新表单,一切绑定了数据的控件都件,此时只需刷新表单,一切绑定了数据的控件都会随之改动会随之改动F表单运转时,数据环境中的数据表会翻开,因此,表单运转时,数据环境中的数据表会翻开,因此,要挪动数据时,只需执行要挪动数据时,只需执行GOGO、SkipSkip命令命令F当绑定字段的文本框的当绑定字段的文本框的Rea

88、dOnlyReadOnly属性为属性为.F.F.时,修正时,修正字段内容,就相应地修正了表的内容字段内容,就相应地修正了表的内容F添加新记录时,先添加一空行,添加新记录时,先添加一空行,Go BottomGo Bottom,并把相,并把相应的字段的只读属性设置为应的字段的只读属性设置为.F.F.F删除直接执行删除直接执行DeleteDelete命令,并命令,并Set deleted onSet deleted on,退,退出表单时,可以一同出表单时,可以一同PackPack掉,但数据环境中的掉,但数据环境中的zgdazgda的的ExclusiveExclusive属性应设置为属性应设置为.t.

89、t.F从数据环境直接把数据表拖入到表单中,可以实现从数据环境直接把数据表拖入到表单中,可以实现数据表与表格绑定数据表与表格绑定F组合框经过组合框经过RowSourceTypeRowSourceType与与RowSourceRowSource属性与环境属性与环境数据绑定数据绑定F单击选项按钮组时,对组合框的单击选项按钮组时,对组合框的RowSourceTypeRowSourceType与与RowSourceRowSource属性进展属性进展 设置设置F选定组合框的某值会引发选定组合框的某值会引发InteractiveChangeInteractiveChange事件,事件,在此事件中只须刷新表单

90、在此事件中只须刷新表单(thisform.release)(thisform.release)44. 4. 外形、计时器的运用外形、计时器的运用4例例19 19 设计一表单,用计时器实现一小球沿正弦设计一表单,用计时器实现一小球沿正弦曲线运动曲线运动4设计要点设计要点4外形的控件的外形由外形的控件的外形由CurvatureCurvature属性控制属性控制(199)(199),在本例中设置为在本例中设置为99994TimerTimer事件每隔事件每隔IntervalInterval长的时间发生一次,因此,长的时间发生一次,因此,TimerTimer事件发生时,只需设置事件发生时,只需设置Sha

91、peShape的坐标就会构的坐标就会构成动画成动画4外形坐标是由外形坐标是由TopTop、LeftLeft属性指定,先根据属性指定,先根据SinSin函函数计算坐标,然后设置数计算坐标,然后设置TopTop、LeftLeft属性,或者用属性,或者用MoveMove方法方法45. 5. 高级运用:高级运用:OleOle对象绑定与对象绑定与APIAPI系统函数的运用系统函数的运用4例例22 22 用数据绑定的方法开发本人的音乐播放器:用数据绑定的方法开发本人的音乐播放器:创建数据表存放所要播放的音乐,设计一表单用于创建数据表存放所要播放的音乐,设计一表单用于播放该数据表中的音乐播放该数据表中的音乐

92、4设计要点设计要点4添加添加OleOle控件,绑定所播放的音乐控件,绑定所播放的音乐(wav,rmi)(wav,rmi)4执行执行Doverb(0)Doverb(0)即可即可4如播放数据表中通用字段中音乐如播放数据表中通用字段中音乐(wav,rmi)(wav,rmi),那么,那么将通用字段绑到将通用字段绑到OLEOLE绑定控件上,执行绑定控件上,执行Doverb(0)Doverb(0)4例例27 27 运用运用Windows APIWindows API开开发本人的本人的MP3MP3播放器播放器4设计要点要点4编写多媒体程序写多媒体程序须调用用动态库winmm.dllwinmm.dll,在系,

93、在系统盘Windowssystem32Windowssystem32下,也能下,也能够在其它目在其它目录下下4用函数用函数mciSendStringmciSendString调用用winmm.dllwinmm.dll各种媒体控各种媒体控制功能,但首先必需声明:制功能,但首先必需声明:4 declare integer mciSendString in * declare integer mciSendString in * winmm.dll string str1,string str2, integer winmm.dll string str1,string str2, integer

94、a, integer ba, integer b4常用功能常用功能调用用4 (1)mciSendString(“open musicfile alias (1)mciSendString(“open musicfile alias bmbm,buffer,0,0),buffer,0,0) (2)mciSendString(“play bm repeat (2)mciSendString(“play bm repeat, , buffer, 0,0)buffer, 0,0) (3)mciSendString(“pause bm (3)mciSendString(“pause bm, buffer

95、, 0,0), buffer, 0,0) (4)mciSendString(“seek bm to start (4)mciSendString(“seek bm to start, , buffer, 0,0)buffer, 0,0) (5)mciSendString(“seek bm to end (5)mciSendString(“seek bm to end, , buffer, 0,0)buffer, 0,0) (6)mciSendString(“close bm (6)mciSendString(“close bm, buffer, 0,0), buffer, 0,0)退出程序退出程序时,应该封封锁,同,同时清掉清掉dllsdlls,即,即执行:行: mciSendString(“close bm mciSendString(“close bm, buffer, 0,0), buffer, 0,0) clear clear1. 实际考试题型实际考试题型 1判别题判别题 2单项选择题单项选择题 3多项选择题多项选择题2. 考题分布考题分布 CH3, 15% CH4, 30% CH5+8,15% CH6, 10% CH7, 30%Q&A

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号