可视化表单设计.ppt
《可视化表单设计.ppt》由会员分享,可在线阅读,更多相关《可视化表单设计.ppt(71页珍藏版)》请在三一办公上搜索。
1、第8章可视化表单设计,8.1面向对象程序设计简介8.2表单设计概述8.3表单设计器的使用8.4数据环境与数据绑定8.5常用表单控件8.6表单集与多重表单,8.1面向对象编程简介,8.1.1面向对象程序设计概述面向对象程序设计(OOP):将客观事物称为对象,对对象的抽象得到类。面向对象程序设计的主要工作有两部分:一是创建类,包括定义类中的成员和类提供的功能(即方法)二是通过类创建对象,并按应用程序的需求建立对象之间的协同工作能力。OOP方式不再是以操作和过程作为程序设计的中心,而是将对象和数据结构作为程序设计的中心。,1.对象(Object)对象是类的运行实例,客观世界里的任何实体都可以被看作是
2、对象。对象可以是具体的事物,也可以指某些概念。从编程的角度来看,对象是一种将数据和操作过程结合在一起的数据结构,或者是一种具有属性(数据)和方法(过程和函数)的集合体。事实上程序中的对象就是对客观世界中对象的一种抽象描述,8.1.2对象与类的概念,2.属性:对象所具有的特征被称为对象的属性。每个对象都有多个属性,如对象的显示标题、对象的名称、对象的前景色背景色、对象的文本大小等。3.方法:描述对象行为的过程。即程序代码4.事件:是一种由系统预先定义而由用户或系统发出的动作。事件作用于对象,对象识别事件并作出相应反应。事件集是固定的,用户不能定义新的事件。当用户执行相应的操作时都会引发一个事件。
3、5.类:类是一种对象的归纳和抽象,是对一类相似对象的性质描述,这些对象具有相同种类的属性(变量)以及方法(函数),8.1.3对象与类的特性,1.封装性对象的属性与方法被封装在一个独立的一段源代码中,对其中的数据的访问必须通过方法实现,不能直接访问。2.层次性类具有层次性,在一个类的基础上通过添加一些属性和方法可以得到一个新的类,称原来的类为基类或父类,产生的新类为派生类或子类。子类继承了父类的所有属性和方法。,3.继承性即子类具有父类的所有属性和方法。对父类所作的修改会被子类自动继承。4.抽象性用户对对象进行操作时,可忽略对象内部的实现细节。5.多态性同一类的对象可以有不同的表现形式。,8.1
4、.4VisualFoxpro的基类,Visual FoxPro提供了一系列的基本对象类,称为基类(Base Class)。每个对象都有各自的属性和方法。基类的分类:基类一般可分为控件类和容器类控件类:该类的对象必须作为一个整体来访问或处理。如命令按钮和文本框等。容器类:该类对象可以容纳控件类对象,可以单独对其中的组件进行修改和操作。如表单、命令按钮组、页框等。,1控件类控件:通常是指容器类对象内的一个图形化的、并能与用户进行交互的对象。常见的控件类对象见下表,2容器类常见的容器类对象见下表,一个对象被创建后,对对象的操作主要是访问其属性及调用其方法。这些操作通过对该对象的引用进行。其基本格式为
5、:对象引用.属性 对象引用.方法其中对象引用分为绝对引用和相对引用1.绝对引用从最顶层的容器开始的引用。如:FormSet1.Form1.CommandGroup1.Command.Enabled=.f.,8.1.5对象的引用,2.相对引用,引用时使用下面关键字的引用,【例8.1】对象的相对引用thisform.refreshthisform.Label1.Caption=你好,信息世界this.value=3,8.2表单设计概述,8.2.1 创建表单的途径1.使用表单向导创建表单2.在表单设计器中使用表单生成器创建表单3.使用表单设计器创建表单4.通过编写程序创建表单打开表单设计器的方法:1
6、.通过“文件/新建/表单/新建”2.使用命令:create form 表单文件名,8.2.2表单的修改与运行,1.表单的修改(1)菜单方式:通过文件菜单的打开命令(2)命令方式:modify form 表单文件名2.表单的运行(1)菜单方式打开表单后使用工具栏中的!,或使用表单菜单中的执行表单命令(2)命令方式do form 表单文件名 with 参数表说明:参数是传给Init事件代码中的PARAMETERS或LPARAMETERS中的参数。,8.2.3常用表单事件与方法,1.常用表单事件:(1)Init事件在对象建立之前引发,在表单的Init事件前引发(2)Activate事件当一个表单、表
7、单集或页面成为当前活动对象时引发(3)Destroy事件在控件对象释放时表单对象的Destroy事件之前引发(4)Load事件在表单对象被创建之前即Init事件之前引发(5)Unload事件在表单对象的Destroy事件后引发(6)Error事件:出错时引发(7)GotFocus事件:对象被选定时引发(8)Click事件:单击时引发,2.常用表单方法(1)Relase方法:将表单从内存中释放。ThisForm.Release表单运行时,用户单击表单右上角的关闭按钮,系统会自动执行Relase方法。(2)Refresh方法:刷新表单。(3)Show方法:显示表单。该方法将表单的Visible属性
8、设置为.T.。(4)Hide方法:隐藏表单。(5)SetFocus方法:使对象成为活动对象。,8.2.4使用表单向导创建表单,1.创建单表表单【例8-2】使用表单向导创建一个可维护职工档案表zgda.dbf的表单2.创建一对多表单【例8-3】使用student表和borrow表创建一个一对多表单,8.3 表单设计器的使用,操作步骤1.启动表单设计器创建空表单2.指定数据源(不是必须)3.添加控件4.设置控件属性5.添加代码6,运行表单,8.3.1表单设计器的启动8.3.2表单设计工具栏通过“显示”菜单中的“工具栏”命令可打开或关闭工具栏。1.表单设计器工具栏2.表单控件工具栏3.布局工具栏4.
9、属性窗口5.代码窗口,8.3.3表单生成器在表单设计器中通过下面方法之一可以打开表单生成器:1.单击“表单设计器”工具栏中的”表单生成器“按钮”2.从快捷菜单中选择“生成器”命令3.从“表单”菜单中选择“快速表单”命令【例8-4】使用“表单生成器”快速生成一个职工档案表单。样式选择“新奇式”,8.3.4用表单设计器设计表单,主要操作步骤1.使用“文件/新建”命令新建一个空表单2.向数据环境中添加表(当表单中要使用表时)3.向表单中添加控件,并对控件进行合理布局4.选择控件,修改控件的属性5.为命令按钮添加事件代码6.运行表单,【例8-5】设计一个名为“身分验证”的应用程序的密码输入对话框。要求
10、用户输入的密码字符自动显示为“”。密码正确,显示“密码正确,欢迎进行本系统!”,否则,显示“密码错,禁止进行本系统!”,最多允许输入3次密码。要点:1.使用表单完成,表单中要添加:一个标签控件、一个文本框控件、二个命令按钮2.修改控件的属性:控件上显示的文字,文本框输入的内容显示为*号3.要给命令按钮添加代码,使其完成指定的功能。操作步骤:1.创建空表单,2.向表单中添加控件,3.修改控件的属性,4.添加代码,控件的属性,添加代码,Form1对象的Load事件代码:public ii=0Command2对象的Click代码:thisform.text1.value=,Command1对象的Cl
11、ick代码:i=i+1if i3 if thisform.text1.value=3721 messagebox(密码正确,欢迎进行本系统!)thisform.release else messagebox(密码错,重新输入!)thisform.text1.value=endifelse messagebox(密码错,禁止进行本系统!)this.enabled=.f.endif,8.4数据环境与数据绑定,8.4.1数据环境数据环境指表单或表单集中使用的数据源,即表单或表单集中所有用到的数据所在的表。1.启动“数据环境设计器”通过表单设计器工具栏中的数据环境按钮或显示菜单中的“数据环境”命令2.
12、向数据环境添加表或视图使用快捷菜单中相应命令添加,3.在数据环境中设置关系方法:将主表中的字段拖动到子表中的相应索引字段上即可。8.4.2数据绑定即为表中的控件指定相关的数据源。通常由控件的ControlSource属性指定8.4.3向表单添加字段直接将数据中的字段拖动到表单中。,8.5常用表单控件,8.5.1标签与命令按钮1.标签用于显示静态文本(运行后不能改变的文字),一般用于提示。文本内容保存在Caption属性中。标签的主要属性有:Caption,Autosize,Fontsize,Forecolor,BackStyle,BackColor,Name,Alignment,2.命令按钮,
13、Caption属性内容为命令按钮上显示的内容。添加命令按钮的操作主要有:设置Caption属性(后面加E可以将E设置为热键)和输入代码(Click事件),【例8-6】设计一个简单表单,含一个显示“欢迎使用档案管理系统”文字的标签以及“进入”、“退出”两个命令按钮,1.文本框(TextBox)和编辑框(EditBox)的区别相同之处:都可以由用户直接输入数据与编辑数据,输入的数据保存在Value属性中。不同之处:文本框只能输入一行文本,编辑框可以输入多行文本(有滚动条);文本框可以输入字符型(默认类型)、数值型、日期型和逻辑型数据,而编辑框只能输入字符型数据。要使得文本框中输入的数据为某一确定的
14、类型,必须先设置其Value属性值为该类型的数据或通过文本框生成器设置其属性。,8.5.2文本框和编辑框,添加文本框和编辑框后的主要操作:1.设置框中的默认值:在Value属性中设置,设置后的值要运行时才能看见。2.右击文本框控件或编辑框控件,从快捷菜单中选择“生成器”,然后在生成器对话框中设置其格式及与其对应的字段等。【例8-7】设计一个如图8-21所示的“日期与时间”表单,只含一个文本框,逐次单击之,即可轮流显示系统当前的日期或时间。日期格式为年月日,日期分隔符为“.”,操作步骤1.通过“文件/新建”命令建立一个空表单2.向表单中添加一个文本框控件3.设置属性:设置Form1的Captio
15、n属性为“日期与时间”4.添加代码:双击表单空白处,添加Form1的Load事件代码如下:public ii=.t.,4.修改文本框Text1的属性:FontSize 为28BackStyle为15.编写文本框Text1的Click事件代码如下:if i=.t.thisform.text1.value=date()&取得当前日期thisform.text1.dateformat=12&日期格式为年月日thisform.text1.datemark=.i=.f.elsethisform.text1.value=time()i=.t.endif,【例8-7】设计一个如图8-22所示的表单,在职工档
16、案表中查询指定姓氏的职工姓名,并将结果显示在编辑框中。操作要点:1.向数据环境中添加表2.创建表单,并添加2个标签控件、1个文本框控件、1个编辑框控件、2个命令按钮并修改其标题属性3.添加命令按钮的Click事件代码。其中查找按钮的代码主要功能是在表中查找与文本框中输入的姓氏相符的姓名,并将其累加到编辑框的value属性中。,set exact off作用:设置字符串的非严格匹配并将光标定位到文本框中。执行时间:当表单激活时执行,Form1的Activate事件代码,查询命令按钮代码,thisform.edit1.value=xs=alltrim(thisform.text1.value)go
17、 topk=0scan for zgda.姓名=xsthisform.edit1.value=thisform.edit1.value+zgda.姓名+chr(13)k=1endscanif k=0messagebox(职工表中无此姓氏,0,查找失败)endifthisform.text1.value=return,退出命令按钮代码,release thisform,8.5.3列表框和组合框,1.列表框和组合框的区别共同之处:列表框(ListBox)和组合框(ComboBox)都有一个供用户选择的列表。不同之处:列表框中内容只能选择不能输入,当其内容不能完全显示时在其右边有一个滚动条。而组合框
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 可视化 表单 设计
链接地址:https://www.31ppt.com/p-5339607.html