最新vfp表单设计.ppt

上传人:scccc 文档编号:11457807 上传时间:2021-08-06 格式:PPT 页数:53 大小:203KB
返回 下载 相关 举报
最新vfp表单设计.ppt_第1页
第1页 / 共53页
最新vfp表单设计.ppt_第2页
第2页 / 共53页
亲,该文档总共53页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《最新vfp表单设计.ppt》由会员分享,可在线阅读,更多相关《最新vfp表单设计.ppt(53页珍藏版)》请在三一文库上搜索。

1、vfp表单设计,第五部分 面向对象程序设计,基本概念 控件的使用 数据表的表单设计,VFP不仅是一个功能强大的交互式数据管理工具,而且是一个可以通过程序代码全面管理数据的语言系统。VFP不仅支持传统的面向过程的编程方法,而且全面引入面向对象的程序设计方法。VFP提供的编程能力及可视化设计工具,使我们可以使用传统的面向过程方法编写程序,又可以使用面向对象的编程技术和事件驱动编程技术来大幅度提高应用程序的开发效率。,vfp表单设计,一、基本概念,1.对象(object) 对象是对具体的客观事物的表示。从可视化编程的角度看,对象是一个具有属性(数据)和方法(行为方式)的实体,常见的有:表单、标签、文

2、本框等。一个对象建立以后,其操作就通过与对象有关的属性、事件和方法来描述。,2.对象的属性(property) 属性是指对象的一项描述内容,用来描述对象的一个特性,不同的对象具有不同的属性,而每个对象又有若干属性来描述。 例如:人的属性有:性别、姓名、年龄等; 因此,属性是对象的特征特点,属性定义了对象所具有的数据,它是对象所有的特性数据的集合。,vfp表单设计,3.事件(event) 事件是对象触发的行为描述,“事件”是预先定义的动作,由用户或者系统激活。VFP中的事件通常包括键盘“事件”和鼠标“事件”等。为了响应事件,可以为事件加入响应的代码,也可以执行某个程序。,4.方法(method)

3、 方法是与对象相关的过程,是指对象为实现一定功能而编写一段代码,如果对象已创建,便可以在应用程序的任何一个地方调用这个对象的方法。,事件通常已经预先由系统定义好了,不能随便扩充,而方法和属性却可以无限扩展。,vfp表单设计,5.类(class) 类是一组具有相同特性的对象的抽象定义。类是一种类型的定义,它将属性和方法相统一,把具有相似特征和行为的对象形成一个个结构。类是具有相同或近似特征的对象的抽象,对象是类的具体的实例。 类可以具有子类,子类继承了父类的属性和方法,并可以附加自己的特定的属性和方法。,vfp表单设计,6.容器类和控件类,基类是VFP内部定义的类,它可以作为其他用户自定义类的基

4、础,它可以分为容器类和控件类。 1).容器类 可以包含其他对象的类称作容器类。容器对象可作为父对象,其包含的对象称作子对象。,vfp表单设计,2).控件类 不允许包含其他对象的类称作控件类,它是可以包含在容器类中并由用户派生的VFP类。控件类不能容纳其他对象。当需要将一个控件对象放入容器中,需要引用对象时必须经过容器。引用容器中控件对象的方法是: 格式:容器对象. 控件对象. 属性属性值,vfp表单设计,7.表单对象,表单是应用程序的用户界面,也是我们进行程序设计的基础。各种图形、图像、数据等都是通过表单中的对象显示出来,因此表单是一个容器对象。 1)表单的结构 VFP的表单具有和window

5、s应用程序的窗口界面相同的结构特征。其中除了表单体之外的所有特征都可以部分或全部从表单中被删除。 2)表单的属性 在VFP中,表单的属性就是表单的结构特征。通过修改表单的属性可以改变表单的内在或外在的特征。 3)表单的属性和方法 表单中只有部分事件与方法经常使用,可在代码窗口的“过程”列表框中,看到所有的表单事件与方法等。,vfp表单设计,a.表单常用事件 Load事件 当表单被装入内存时发生 Init事件 当表被初始化时发生 Activate事件 当表单被激活时发生 上述事件被激发的过程为:Load、Init、 Activate Destroy 事件 当表单被释放时发生 Unload 事件

6、当表单被关闭时发生 上述事件被激发的过程为: Unload 、 Destroy Resize事件 当用户或程序去改变表单大小时发生,vfp表单设计,b. 表单的常用方法 Hide方法 隐藏表单 Show方法 显示表单 Release 方法 释放表单 Refresh方法 刷新表单,vfp表单设计,a.绝对地址 通过提供对象的完整容器层次引用对象称为绝对引用。 例如:在一个名称为stu的表单中,有一个按钮控件cmd1,则设置其“是否可用”的属性为不可用,语法为: stu.cmd1.Enabled.F.,表单上可以包含许多对象。所谓对象引用是指如何在程序设计和程序运行时对这些对象进行控制和操作。 格

7、式:引用地址.对象名称,8.对象的引用,vfp表单设计,b.相对地址 从对象层次中引用对象时用到的一些属性和关键字: Parent:该对象的直接引用 This: 该对象 ThisForm:包含该对象的表单 ThisFormset:包含该对象的表单集 说明:只能在方法程序或事件过程中使用This 、 ThisForm、ThisFormset 例如:在一个名称为stu的表单中,有一个按钮控件cmd1,则设置其“是否可用”的属性为不可用,语法为: Thisform.cmd1.Enabled.F.,vfp表单设计,二、控件的使用,标签控件 文本框控件 命令按钮控件 编辑框控件 计时器控件 容器控件 选

8、项按钮组控件 复选框控件 微调控件 页框控件 线条控件 形状控件 表格控件 图像控件,vfp表单设计,数据表的表单设计,用表单向导设计表单,方法1:在“项目管理器”中打开 在“项目管理器”中,先选择“文档”选项卡,在选择“表单”; 单击“新建”按钮,在弹出的对话框中选择“表单向导”,进行表单设计。 方法2:在“工具”菜单中打开 在“工具”菜单中指向“向导”的子菜单,选择“表单”命令,将弹出“向导选取”对话框。,表单以表单文件存放,它的扩展名为:SCX,vfp表单设计,用表单设计器设计表单,运行表单,步骤如下: 1)在项目管理器中,单击“文档”选项卡; 2)选择要运行的表单,单击右边的“运行”按

9、钮,则运行表单文件;,实例:打开student.dbf,为其建立表单文件student.scx。,命令:DO FORM ,在“项目管理器”中,先选择“文档”选项卡,在选择“表单”; 单击“新建”按钮,在弹出的对话框中选择“新建表单”,进行表单设计。,vfp表单设计,实例1:为dank建立表单“查询教师”,在表单中添加标签、文本框和命令按钮。要求设计程序,执行时,输入姓名查询并显示教师档案数据。,vfp表单设计,实例2:修改查询教师的表单为如下:,vfp表单设计,实例3:修改查询教师的表单为如下:,列表框,提示:1.使用向导建立表单; 2.建立列表框,使用“生成器”进行编辑 3.为列表框建立cl

10、ick事件;,vfp表单设计,实例4:修改学生成绩表的表单为如下:,提示:1.使用组合框显示“姓名”,单击姓名时,文本框显示相应内容; 2.使用按钮组,添加5个按钮;建立5个单击事件;,命令按钮组 控件,vfp表单设计,一、标签控件 常用属性: Wordwrap 折行显示 Caption 显示的内容 常用事件: Click 、Dbclick,vfp表单设计,二、文本框控件 常用属性: Text 在文本框中显示征文的内容存放在text属性中 Value 指定当前状态 Inputmask 指定数据输入以及如何显示: X 可输入任意字符 可以输入数字和符号 # 可输入数字、空格和字符 * 在值的左侧

11、显示星号 Scrollbars 滚动条属性 Passwordchar 指定用户输入的字符或占位符是否显示在文本框中,并确定用作占位符的字符。,vfp表单设计,Selstart、sellength、seltext 在程序运行中,对文本内容进行选择操作时,3个属性用来标识用户选中的正文。 Selstart :选定文本的开始位置,第一个字符的位置为0 Sellength :选定文本的最大长度 seltext :选定文本的内容 常用事件: Change 、 Keypress、 Lostfocus 常用方法: Setfocus 使指定的文本框获得焦点。 实例:计算圆面积,vfp表单设计,三、命令按钮控件

12、 常用属性: Caption 命令按钮显示的内容,可设置快捷键 ,即按alt带下划线的字母。 Picture 按钮可显示图片文件 Default 值可为.T.或.F.,当值为.T.时,按enter键时有效 Cancel 值可为.T.或.F.,当值为.T.时,按escr键时有效 Enabled 值可为.T.或.F.,当值为.T.时,按钮有效,否则无效 常用事件: 单击、双击,vfp表单设计,四、编辑框控件,常用属性: Scrollbars 滚动条属性 0:没有滚动条 2:有滚动条 Readonly 指定用户是否可以编辑一个控件 .T. :不能编辑控件 .F. :可以编辑控件 常用方法: Setf

13、ocus 实例:将一个编辑框的内容,加到另一个编辑框中。,vfp表单设计,五、计时器控件 常用属性: Interval 指定计时器控件的timer 事件之间的时间间隔毫秒数,缺省为0,不触发timer事件。 单位为:ms 例如 Interval 500 表示0.5秒触发一次timer事件 Interval 0:屏蔽计时器 常用事件: Timer 事件,时钟控件只有一个timer事件,每隔Interval触发一次timer事件。 实例:显示当前的日期和时间,vfp表单设计,六、选项按钮组控件 常用属性: Alignment 值为0时,按钮控件在左边,标题显示在右边 值为1时,按钮在右边 Valu

14、e 值为0,未被选中 ;值为1,被选中。 Style 指定单选按钮或复选框的显示方式 0 为标准 1 为 图形 常用事件: Click 、Dbclick 、Mouseup、Mousemove,vfp表单设计,七、复选框控件 常用属性: Alignment 值为0时,按钮控件在左边,标题显示在右边 值为1时,按钮在右边 Value 值为0,未被选中;值为1, 被选中;值为2,灰色禁止 Style 指定复选框的显示方式 0 为标准 1 为 图形 Picture 指定复选框被设计为复图形按钮时的图像。 常用事件: Click 、Dbclick 、Mouseup、Mousemove,Keypress,

15、vfp表单设计,八、列表框控件 常用属性: List 该属性是一个字符数组,存放列表框的项目。List的下标从0开始。 Listindex 该属性只在程序中设置或引用。Listindex 的值表示执行时选中的列表项的序号,如果没有任何项,则listindex 的值为1。 Listcount 该属性只在程序中设置或引用。Listcount 的值表示列表框中项目的数量。 Selected 指定列表框和组合框控件中一项是否选中。该属性只在程序中设置或引用。 Selected 是一个逻辑数组,其元素对应列表相应的项。 Selected ( I ) 的值为.T. ,表示第I+1 项被选中。,vfp表单设

16、计,Sorted 决定列表框中项目在程序运行期间是否按字母顺序排列显示。该属性只能在程序设计中使用。其值为真,表示按字母顺序显示,否则按加入的先后顺序显示。 RowSourceType 指定列表框和组合框中值的来源类型,在设计时使用。 MoverBars 指定 是否在列表框控件显示移动钮栏。其值为真,表示显示移动钮栏,用户可以交互的重新排序控件中的内容。否则按加入的先后顺序排列。 MultiSelect 指定用户是否可以在列表框控件 中作多项选择,以及如何选择。其值为真,则允许多项选择,用CTRL和鼠标单击,可选择多个不连续的选项;用SHIFT和鼠标单击选择多个连续的选项。值为假,不允许多项选

17、择。 ControlSource 指定与对象绑定的数据源。 InputMask 指定控件中数据的输入格式和显示格式。,vfp表单设计,常用事件:Click 、Dbclick、DownClick、DropDown 常用方法: ADDItem 在对象中添加一个新的数据项,并且可以指定数据项索引。 对象 . ADDItem( (nindex)) 说明:如果选择Nindex 选项,则指定控件中放置数据项的位置。 RemoveItem 从列表框或组合框中移去一个数据项 对象 . RemoveItem (nindex) 说明:nindex 为一个整数,对应被移去项在控件中的显示顺序。 Clear 对象 .

18、 Clear 清除列表框、组合框的所有内容。,vfp表单设计,九、组合框控件 有两种形式的组合框,即下拉组合框和下拉列表框,通过控件的style属性来修改。 Style值为2,则为下拉列表框 Style值为0,则为下拉组合框 说明: 1.组合框具有列表框和文本框的大部分属性 2.下拉式组合框可输入内容,但必须通过Addltem 方法或Rewsource属性加入。,vfp表单设计,十、微调控件 可在一定范围内控件数据的变化。除了能够用鼠标单击控件改变数字外,还可以直接输入数值。 常用属性: Keyboardhighvalue 指定用键盘输入数据的最大值 Keyboardlowvalue 指定用键

19、盘输入数据的最小值 Inputmask 设置输入数值的格式 Spinnerhighvalue 指定单击上下箭头时,微调控件允许的最大值 Spinnerlowvalue 指定单击上下箭头时,微调控件允许的最小值 Value 指定控件当前的状态,vfp表单设计,常用事件: Keypress 、Click、Dbclick、DownClick、Init、InteractiveChange和 LostFocus,vfp表单设计,十一、页框控件,vfp表单设计,十二、线条控件 用于在表单上画各种类型的线条。 常用属性: BorderStyle 确定线条形状。只有在borderwidth 值为1时,该属性才

20、有意义属性值包含7个选项: 0 :透明 1 : 实线 2 : 虚线 3 :点线 4 :点划线 5 :双点划线 6 : 内实线 BorderWidth 确定线宽 Height 确定划线状况,值为0时,是水平线 LineSlant 确定划线的方向 Width 确定划线区域宽度。值为0,则是画垂直线。 常用事件: Click、Dbclick,vfp表单设计,十三、形状控件 用于在表单上画各种类型的形状,可画矩形、圆角矩形、正方形、圆角正方形、椭圆或圆。 常用属性: Curvature 确定形状的弯曲度,其取值范围从0 - 99。值为0时,表示图形为矩形或正方形;值为99,表示为圆形或椭圆; 值为1-

21、99 ,图形为圆矩形或圆角正方形。 BorderStyle 确定线条形状,只有在borderwidth 值为1时,该属性才有意义。 Fillcolor 设置图形填充颜色 FillStyle 确定图形的方案(取值为0-7),vfp表单设计,SpeciaEffect 确定图形的显示效果,只有当curvature属性设置为0时,该属性才能确定显示效果。 值为0,平面显示 值为1,三维显示效果 常用事件: Click、Dbclick,vfp表单设计,十四、图像控件 图像控件的功能是在表单上显示图像。使用图像控件只能在表单上显示图像,而不能对它们编辑。 常用属性: Picture 指定在控件中显示位图文

22、件、图标文件(ioc)或通用字段。 Backstyle 确定图像是否透明 Bordercolor 确定图像颜色,可以根据需要自己设定 Colorsource 可以设定“对象颜色属性”或“windows默认” Stretch 设置图像放置情况。设置Stretch 属性有三种选择项: 0(剪裁):表示将图像剪裁成图像控件设置的大小 1(等比填充):表示将相对比例保持图像区域的图像的大小 2(变比填充):表示它将按显示区域的高度和宽度显示全部图像,而不保持图像原有的相对比例。,vfp表单设计,Visible 设置图像是否可见 常用事件: Click、Dbclick、MouseMove、MouseDo

23、wn,vfp表单设计,十五、表格控件 表格控件类似浏览窗口。 常用属性: Childorder 指定表中与父表关键字相连的外部关键字 Columncount 确定列的数目 Linkmasre 显示的子记录的父表 Recordsource 指定表格要显示的数据 Recordsourcetype 指定数据源的类型。只有设置了数据源,才能在表格中显示数据。值为0时,表示数据源为表,将自动打开Recordsource指定的表。,vfp表单设计,SET命令组,以SET命令关键字开头的命令有百余条,这些命令组成了SET命令组。这组命令常用于设置系统工作环境和状态。 1. SET TALK ON|OFF|W

24、INDOWS 规定是否将命令执行信息显示在屏幕或当前活动窗口内。 On 显示 Off 隐藏 Windows 执行信息显示在位于屏幕右上角的系统信息窗口内。 2. SET DEFAULT TO PATH 用于设置当前工作目录,vfp表单设计,3. SET FILTER TO 条件 用于从当前表中筛选出一组满足指定条件的记录。 4. SET DELETE OFF|ON 设置是否对带有删除标记的记录进行操作。 On 不进行操作 Off 进行操作 5. SET EXACT OFF|ON 用于指定两个字符串比较的方式。 Off 类似比较 On 完全比较 6. SET PATH TO PATH 用于定义一

25、个路径表,路径表中各路径必须用逗号或分号隔开。,vfp表单设计,7. SET SAFETY ON/OFF 用于确定是否对磁盘文件进行修改或损坏保护。 On 允许给出警告提示。(默认) Off 不给出警告提示。 SET CONSOLE ON/OFF 指定程序中输出命令的内容是否在屏幕上显示出来。 Off 命令执行时在屏幕上的输出内容不被显示。 9. SET DECIMALS TO 指定某些操作和计算的结果中给出的小数位数。,vfp表单设计,建立“一对多表”表单,1.使用“表单向导”中,选择“一对多表”向导; 2.在其中设置父表和子表,及其索引关键字等。,vfp表单设计,实例5:建立文件stu(学

26、号,姓名,性别,出生年月)和stu1(学号,姓名,语文、数学、英语、物理、总分) 设置stu为父文件,stu1为子文件。,vfp表单设计,结构化查询语言SQL,结构化查询语言SQL是目前美国国家标准组织ANSI的标准数据语言。SQL是一种非过程化的语言。,vfp表单设计,一、结构化查询语言SQL-查询,在SQL语言中,查询操作是用SELECT语句来完成的。 格式:SELECT DISTINCT FROM WHERE ORDER BY ASC/DESC, ASC/DESC,说明: 指定要显示的字段名表,* 代表所有字段 指明查找过程中涉及到的表,可以是单表,也可是多个表,表与表之间用逗号隔开。

27、指出所需数据应满足的条件 ORDER BY :控制查询所得记录的排列顺序。 ASC :升序 DESC:降序 DISTINCT :去掉结果中重复的,vfp表单设计,2.结构化查询语言SQL命令使用举例,1.单表查询 即所有查询信息均出自一个表中,在SELECT语句中表现为FROM子句中只有一个表名。 1)无条件查询 例1:显示dank中所有信息,并按职称排序 select * from dank order by 职称 例2:显示dank中所有职工的姓名、年龄信息 select 姓名,年龄 from dank,vfp表单设计,2)条件查询 例1:查询显示dank中所有年龄大于30的职工信息 se

28、lect * from dank where 年龄30 例2:查询显示dank中所有女讲师的姓名 select 姓名 from dank where 性别“女”and 职称=“讲师” 例3:查询显示dank中姓氏为“刘”职工的信息 Select * from dank where 姓名 like “刘*” LIKE:可能(比较运算符),vfp表单设计,2.多表查询 关系数据库管理系统允许用户将两个或多个表的记录通过相关字段结合在一起。实例:有表dank1(姓名、性别、年龄) dank2(姓名、职称、工资)要求显示所有职工的姓名、职称、工资命令:select dank1.姓名,dank2.职称,

29、dank2.工资 from stu1,stu2 where dank1.姓名=dank2.姓名,vfp表单设计,二、结构化查询语言SQL-插入,格式:INSERT INTO 表名(字段名1,字段名2) VALUES(常量,常量),例:把一个学生的记录(990016,李华,90,80)插入到student中。 INSERT INTO STUDENT(学号,姓名,语文,数学) VALUES(“990016”,“李华”,90,80),vfp表单设计,二、结构化查询语言SQL-删除,格式:DELETE FROM 表名 WHERE ,例:把student中,学号为“990003”的学生删除。 DELET

30、E FROM STUDENT WHERE 学号=“990003”,vfp表单设计,二、结构化查询语言SQL-更新,格式:UPDATE SET 字段表达式,字段表达式 WHERE 功能:修改指定表中满足条件的记录,把这些记录按set子句中的表达式修改相应字段上的值,例:把student中,学号为“990002”的学生的数学成绩改为90。 UPDATE STUDENT SET 数学90 WHERE 学号“990002”,vfp表单设计,查询表,使用SQL可以构造复杂的查询条件。如果需要快速获取结果,应采用“查询设计器”,它能够搜索那些满足指定条件的记录,也可以根据需要对记录进行排序和分组以及查询结果创建报表、标签和图形。,使用“项目管理器”的“数据”选项卡,选择“查询”,然后单击“新建”按钮。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1