第八章表单设计与应用优秀PPT.ppt
《第八章表单设计与应用优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第八章表单设计与应用优秀PPT.ppt(84页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第八章表单设计与应用第一页,本课件共有84页本本 章章 要要 点点 面向对象的概念面向对象的概念 建立表单建立表单管理表单管理表单 运行表单运行表单常用表单常用表单控件控件*表单内可以包含命令按钮、文本框、表单内可以包含命令按钮、文本框、列表框等各种界面元素。列表框等各种界面元素。第二页,本课件共有84页 8.1 面向对象的概念面向对象的概念8.1.1对象(Object)客观世界里的任何实体都可以被看作是对象。对象可以是具体的物,也可以指某些概念。从编程的角度来看,对象是一种将数据和操作过程结合在一起的数据结构,或者是一种具有属性(数据)和方法(过程和函数)的集合体。事实上程序中的对象就是对客
2、观世界中对象的一种抽象描述如:一部电话、一名学生、一个表单、一个命令按钮都可作为对象。每个对象都有一定的状态如电话颜色是红色的,每个对象也有自己的行为,如学生参加考试。(1)对象属性:属性用来表示对象的状态。(2)对象方法:对象方法是描述对象行为的过程。第三页,本课件共有84页8.1.2类(CLASS)类和对象关系密切,但不相同。类是对一类相似对象的性质描述,这些对象具有相同种类的属性以及方法例:可为学生建立一个类,在“学生”类的定义中,需要描述的属性可能包括“学号”、“姓名”等,需要描述的方法可能有“考试”、“毕业”等,基于“学生”类,我们可以生成任何一个学生对象,对生成的每个学生对象,都可
3、以为其设置响应的属性值。8.1.3子类与继承在面向对象的方法里,继承是指在基于现有的类创建新类时,新类继承了现有类里的方法和属性。此外,可以为新类添加新的方法和属性。我们把新类称为现有类的子类,而把现有类称为新类的父类。一个子类的成员一般包括:(1)从其父类继承的属性和方法。(2)由子类自己定义的属性和方法。第四页,本课件共有84页VisualFoxPro基类是系统本身内含的,并不是系统本身内含的,并不存放在某个类库中。用户可以基于基类生成所需要的存放在某个类库中。用户可以基于基类生成所需要的对象,也可以扩展基类创建自己的子类对象,也可以扩展基类创建自己的子类 在在程程序序设设计计中中,可可以
4、以使使用用CREATEOBJECTCREATEOBJECT函函数数来来直直接生成基于某个类的对象。该函数的格式如下:接生成基于某个类的对象。该函数的格式如下:CREATECREATEOBJECTOBJECT(,1,2,)函数基于指定的类生成一个对象,并返回对象的引用8.2VisualFoxPro基类第五页,本课件共有84页VisualFoxpro基类列表类名含义类名含义ActiveDoc活动文档Label标签CheckBox复选框Line线条Column(表格)列Listbox列表框ComboBox组合框OlecontrolOLE容器控件CommandButton命令按钮Oleboundcon
5、trolOLE绑定控件CommandGroup命令按钮组OptionButton选项按钮Container容器Optiongroup选项按钮组Contorl控件Page页Custom定制PageFrame页框EditBox编辑框ProjectHook项目挂钩Form表单Separator分隔符FormSet表单集Shape图形Grid表格Spinner微调控件Header(列)标头TextBox文本框HyperLink超级链接Timer定时器Image图象ToolBar工具栏第六页,本课件共有84页对象属性访问以及对象方法调用的基本格式如下:对象属性访问以及对象方法调用的基本格式如下:.(参数
6、列表参数列表)【例【例7-17-1】基于】基于VisualFoxProVisualFoxPro的的FORMFORM类生成一个对类生成一个对象,然后访问该对象的一些属性和方法象,然后访问该对象的一些属性和方法。Oform=CREATEOBJECT(Form)Oform=CREATEOBJECT(Form)&生生成成一一个个空空白表单白表单Oform.showOform.show&显示表单显示表单Oform.caption=”Oform.caption=”演示演示”&”&修改表单的标题修改表单的标题?”这这是是一一个个生生成成对对象象的的演演示示程程序序”&在在表表单单上上输输出出字字符串符串Of
7、orm.releaseOform.release第七页,本课件共有84页8.1.5容器与控件VisualFoxPro中的类一般可分为两种类型:容器类和控件类。相应地,可分别生成容器(对象)和控件(对象)。容器可以被认为是一种特殊的控件,它能包容其他的控件或容器控件是一个可以以图形化的方式显示出来,并能与用户进行交互的对象,控件类不能包含其它对象(1)绝对引用:从最高容器开始逐层向下直到某个对象为止的引用称为绝对引用(2)相对引用:从正在为编写事件代码的对象出发,通过逐层向高一层或低一层直到另一对象的引用称为相对引用使用相对引用常用到表7-2所列属性或关键字第八页,本课件共有84页【例例】如如果
8、果Form1Form1中中有有一一个个命命令令按按钮钮组组commandgroup1commandgroup1,该该命命令令按按钮钮组组有有两两个个命命令令按按钮钮:command1command1和和command2command2,label1label1是是表表单单form1form1上上的的一一个标签控件。个标签控件。如如果果要要在在命命令令按按钮钮command1command1的的事事件件(如如单单击击事事件件)代代码码中中修修改改该该按按钮钮的的标标题题可用下列命令:可用下列命令:this.caption=”this.caption=”确定确定”如如果果要要在在命命令令按按钮钮c
9、ommand1command1的的事事件件代代码码中中修修改改命命令令按按钮钮command2command2的的标标题题可用下列命令:可用下列命令:thisform.Cmand2.caption=thisform.Cmand2.caption=取消取消 或者或者mand2.caption=mand2.caption=取消取消 但不能写成下列命令:但不能写成下列命令:mand2.caption=mand2.caption=取消取消 如果要在命令按钮如果要在命令按钮command1command1的事件代码中修改表单的标题可用下列命令:的事件代码中修改表单的标题可用下列命令:This.Paren
10、t.parent.Caption=”This.Parent.parent.Caption=”测试窗口测试窗口”或者或者thisform.caption=”thisform.caption=”测试窗口测试窗口”第九页,本课件共有84页表表7-27-2表7-2属性或关键字引用Parent当前对象的直接容器对象This当前对象ThisForm当前对象所在的表单ThisFormSet当前对象所在的表单集第十页,本课件共有84页8.1.6事件事件是一种由系统预先定义而由用户或系统发出的动作。事件作用于对象,对象识别事件并作出相应反应与方法集可以无限扩展不同,事件集是固定的,用户不能定义新的事件第十一页,
11、本课件共有84页VisualFoxPro中常用事件有:Load:当表单或表单集被加载到内存中时发生的事件。Unload:从内存中释放表单或表单集时发生的事件。Init:创建对象时发生的事件。Destroy:从内存中释放对象时发生的事件。Click:鼠标左键单击击对象时发生的事件。Dblclick:鼠标左键双击对象时发生的事件。Rightclick:鼠标右键单击对象时发生的事件。GotFocus:对象接收到焦点时发生的事件。LostFocus:对象失去焦点时发生的事件。KeyPress:当用户按下或释放键时发生的事件。InteractiveChange:以交互方式改变对象的值时发生的事件。Pro
12、grammaticChange:以编程方式改变对象的值时发生的事件。第十二页,本课件共有84页 8.2 建立表单 表单(Form)是VisualFoxPro提供的用于建立应用程序界面的最主要的工具之一。表单相当于WINDOWS应用程序的窗口表单可以属于某个项目,也可以游离于任何项目之外,它是一个特殊的磁盘文件,其扩展名为.scx。在项目管理器中创建的表单自动隶属于该项目。创建表单一般有两种途径:使用表单向导创建简易的数据表单;使用表单设计器创建或修改任何形式的表单。第十三页,本课件共有84页8.2.1使用表单向导启动表单向导有以下四种途径:(1)打开“项目管理器”,选择“文档”选项卡,从中选择
13、“表单”。然后单击“新建”按钮。在弹出的“新建表单”对话框中单击“表单向导”按钮。(2)在系统菜单中选择【文件】|【新建】命令,或者单击工具栏上的“新建”按钮,打开“新建”对话框,在文件类型栏中选择“表单”。然后单击“向导”按钮。(3)在系统菜单中选择【工具】|【向导】|【表单】命令。(4)直接单击常用工具栏上的“表单向导”图标按钮。按步骤依照“表单向导”完成一对多表表单的设计第十四页,本课件共有84页8.2.2使用表单设计器启动表单设计器有多种方法:菜单方法:若是新建表单,在系统菜单中选择【文件】|【新建】,在文件类型对话框中选择“表单”,单击“新建文件”按钮;若是修改表单,则单击【文件】|
14、【打开】,在打开对话框中选择要修改的表单文件名,单击“打开”按钮。命令方法:在COMMAND窗口输入如下命令:CREATEFORM&创建新的表单或MODIFYFORM&打开一个已有的表单在项目管理器中,先选择文档标签,然后选择表单,单击新建按钮。若是修改表单,选择要修改的表单,单击“修改”按钮。第十五页,本课件共有84页表单设计器环境介绍(1)设计器窗口“表单设计器”窗口内包含正在设计的表单。用户可在表单窗口中可视化地添加和修改控件、改变控件布局,表单窗口只能在“表单设计器”窗口内移动。以新建方式启动表单设计器时,系统将默认为用户创建一个空白表单,如图左侧部分。第十六页,本课件共有84页(2
15、2)属性窗口)属性窗口设计表单的绝大多数工作都是在属性窗口中完成的,因此用户必须熟悉属性窗口的用法。如果在表单设计器中没有出现属性窗口,可在系统菜单中单击【显示】|【属性】,属性窗口如图所示。第十七页,本课件共有84页(3 3)表单控件工具栏)表单控件工具栏 设计表单的主要任务就是利用“表单控件”设计交互式用户界面。“表单控件”工具栏是表单设计的主要工具。默认包含21个控件、4个辅助按钮,如图所示第十八页,本课件共有84页(4 4)表单设计器工具栏)表单设计器工具栏 打打开开“表表单单设设计计器器”时时,主主窗窗口口中中会会自自动动出出现现“表表单单设设计计器器”工工具栏,如图具栏,如图7-1
16、07-10所示所示 第十九页,本课件共有84页8.2.3数据环境1打开数据环境设计器打开数据环境设计器表单设计器环境下,单击“表单设计器”工具栏上的“数据环境”按钮,或选择【显示】|【数据环境】命令,即可打开“数据环境设计器”窗口,此时,系统菜单栏上将出现“数据环境”菜单。2数据环境的常用属性数据环境的常用属性常用的两个数据环境属性是AutoOpenTables和AutoCloseTables第二十页,本课件共有84页3 3向数据环境添加表或视图在数据环境设计器环境下,按向数据环境添加表或视图在数据环境设计器环境下,按下列方法向数据环境添加表或视图:下列方法向数据环境添加表或视图:在在系系统统
17、菜菜单单中中选选择择【数数据据环环境境】|【添添加加】命命令令,或或右右键键单单击击“数数据据环环境境设设计计器器窗窗口口”,然然后后在在弹弹出出的的快快捷捷菜菜单单中中选选择择【添添加加】命命令令,打打开开“添添加加表表或或视视图图”对对话话框框,如如图图所所示示。如如果果数数据据环环境境原原来来是是空空的的,那那么么在在打打开开数数据据环环境境设设计计器器时时,该该对对话话框框就就会会自自动出现。动出现。选择所需表,单击“添加”第二十一页,本课件共有84页4从数据环境中移去表或视图从数据环境中移去表或视图在“数据环境设计器”窗口中,选择要移去的表或视图,在系统菜单中选择【数据环境】|【移去
18、】命令。也可以用鼠标右键单击要移去的表或视图,然后在弹出的快捷菜单中选择【移去】命令。5在数据环境中设置关系在数据环境中设置关系设置关系的方法为:将主表的某个字段(作为关联表达式)拖曳到子表的相匹配的索引标记上既可。如果子表上没有与主表字段相匹配的索引,也可以将主表字段拖动到子表的某个字段上,这时应根据系统提示确认创建索引第二十二页,本课件共有84页常用的关系属性有:RelationalExpr:用于指定基于主表的关联表达式。ParentAlias:用于指明主表的别名。ChildAlias:用于指明子表的别名。ChildOrder:用于指定与关联表达式相匹配的索引。OneToMany:用于指明
19、关系是否为一对多关系,该属性默认为“.F.”,如果关系为“一对多关系”,该属性一定要设置为“.T.”。第二十三页,本课件共有84页8.2.4快速表单调用表单生成器的方法有以下三种:(1)在系统菜单中选择【表单】|【快速表单】命令。(2)单击“表单设计器”工具栏中的“表单生成器”按钮。(3)右击表单窗口,然后在弹出的快捷菜单中选择“生成器”命令。第二十四页,本课件共有84页采用上面任意一种方法后,系统都会打开“表单生成器”对话框,如图所示。选择所需字段,加到“选择字段列表中”第二十五页,本课件共有84页8.3管理表单1表单常用属性属性描述默认值AlwaysOnTop指定表单是否总是位于其它打开窗
20、口之上.F.AutoCenter居中显示.F.BackColor指定表单窗口的背景颜色255,255,255BorderStyle指定表单边框的风格。3Caption显示于表单标题栏上的文本Form1Closable决定表单的右上角的关闭按钮是否有效.T.DataSession指定表单中的表是在全局能访问的工作区打开(设置值为1)还是在表单自己的工作区打开(设置值为2)1MaxButton确定表单右上角是否有最大化按钮.T.MixButton确定表单右上角是否有最小化按钮.T.Movable确定表单是否能移动.T.Scrollbars指定表单的滚动条类型。可取值为:0(无),1(水平)2(垂直
21、)3(既水平又垂直)0WindowState指定表单的状态:0(正常)1(最小化),2(最大化)0WindowType指定表单是模式表单(设置值为1)还是非模式表单(设置值为0)。在一个应用程序中,如果运行了一个模式表单,那么在关闭该表单之前不能访问应用程序中的其他表单0第二十六页,本课件共有84页2表单常用方法表单常用方法(1)Relase方法:将表单从内存中释放。比如表单有一个命令按钮,如果希望单击该命令按钮时关闭表单,就可以在该命令按钮的Click事件中包含如下代码:ThisForm.Release表单运行时,用户单击表单右上角的关闭按钮,系统会自动执行Relase方法。(2)Refre
22、sh方法:刷新表单。(3)Show方法:显示表单。该方法将表单的Visible属性设置为.T.。(4)Hide方法:隐藏表单。该方法将表单的Visible属性设置为.F.。与Relase方法不同,Hide只是把表单隐藏,但并不将表单从内存释放,之后可用Show方法重新显示表单。第二十七页,本课件共有84页3表单常用事件表单常用事件(1)Init事件:在表单创建时引发.(2)Destroy事件:在表单对象释放时引发。(3)RightClick事件:用鼠标右键单击表单时引发.第二十八页,本课件共有84页8.3.2添加新的属性和方法1创建新属性创建新属性向表单添加新属性的步骤如下:(1)在系统菜单中
23、选择【表单】|【新建属性】命令,打开“新建属性”对话框,如图7-13所示。(3)有选择地在“说明”框中输入新建属性的说明信息(2)在“名称”框中输入属性名称第二十九页,本课件共有84页2创建新方法创建新方法在表单中添加新方法的步骤如下:(1)在系统菜单中选择【表单】|【新建方法程序】命令,打开如图的“新建方法程序”对话框。(2)在“名称”框中输入方法名。(3)有选择地在“说明”框中输入新建方法的说明信息。第三十页,本课件共有84页8.4运行单表7.4.1在设计时运行表单在设计时可采用以下方法运行表单文件:(1)在项目管理器窗口中,选择要运行的表单,然后单击“运行”按钮。(2)在表单设计器窗口中
24、,在系统菜单中选择【表单】|【执行表单】命令,或单击常用工具栏上的“运行”按钮。(3)在系统菜单中选择【程序】|【运行】命令,打开“运行”对话框,然后在运行对话框中选择要运行的表单文件,单击“运行”按钮。(4)在命令窗口输入命令:DOFORM。第三十一页,本课件共有84页2在程序中调用表单在程序中调用表单在程序中调用表单可用下列命令:DO FORM NAME 变量LINKEDWITH实参1,实参2,TO变量NOSHOWNAME变量:如果包含NAME子句,系统将建立指定名字的变量,并使它指向表单对象。否则,系统将建立与表单文件名相同的变量,并使它指向表单对象。第三十二页,本课件共有84页LINK
25、ED关键字:如果包含LINKED关键字,表单和表单对象变量将链接起来,这时,表单对象将随指向它的变量的清除而关闭(释放),否则,即使变量已经清除(如超出作用域,用RELEASE命令清除),表单对象依然存在。但不管有没有LINKED关键字,指向表单对象的变量并不会随表单的关闭而清除。TO变量:用于从模式表单返回值。WITH:用于向表单传递参数。NOSHOW:如果包含NOSHOW关键字,表单运行时将不显示,直到将表单的Visible属性被设置为.T.,或者调用表单的Show方法。第三十三页,本课件共有84页8.4.2表单与其它程序模块间的通信1将参数传递到表单将参数传递到表单如果要将参数传递到表单
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第八 表单 设计 应用 优秀 PPT
限制150内