VFP常用控件及表单设计.ppt

上传人:牧羊曲112 文档编号:5452124 上传时间:2023-07-08 格式:PPT 页数:120 大小:1.87MB
返回 下载 相关 举报
VFP常用控件及表单设计.ppt_第1页
第1页 / 共120页
VFP常用控件及表单设计.ppt_第2页
第2页 / 共120页
VFP常用控件及表单设计.ppt_第3页
第3页 / 共120页
VFP常用控件及表单设计.ppt_第4页
第4页 / 共120页
VFP常用控件及表单设计.ppt_第5页
第5页 / 共120页
点击查看更多>>
资源描述

《VFP常用控件及表单设计.ppt》由会员分享,可在线阅读,更多相关《VFP常用控件及表单设计.ppt(120页珍藏版)》请在三一办公上搜索。

1、第9章 VFP常用控件及表单设计,主要内容,9.1 用表单向导建立表单9.2 用表单设计器建立表单9.3 表单9.4 常用表单控件9.5 多表单操作9.6 表单集复习思考题,9.1用表单向导建立表单,例9.1 使用表单向导创建一个维护“STUDENT”表的表单。例9.2 使用一对多的表单向导,创建一个维护学生表“STUDENT”和学生上课情况表“STUDING”的表单。,9.2用表单设计器建立表单,9.2.1 设计表单的基本步骤设计表单的基本步骤为:打开表单设计器;创建表单及其它控件对象并编码;保存表单;运行表单。存盘方法可以选择下列方法之一:选择“文件”菜单中的“保存”命令;选择常用工具栏中

2、的“保存”按钮;按组合键Ctrl+W;关闭表单设计器。表单的运行有以下几种方法:在表单已打开的情况下,单击系统主菜单中的“表单”菜单,选择“执行表单”菜单项;在表单已打开的情况下,单击常用工具栏中的按钮;)在表单已打开的情况下,在表单的任何空白区域单击鼠标右键,从弹出的快捷菜单中选择“执行表单”命令;在命令窗口中输入DO FORM 加表单文件名命令。,9.2用表单设计器建立表单,9.2.2 快速创建表单例9.3 使用快速表单创建一个学生信息查看和编辑表单。实现步骤为:(1)打开表单设计器:在命令窗口中输入CREATE FORM STU,系统将打开表单设计器且表单设计器的标题为STU.SCX。(

3、2)生成快速表单:选择“表单”菜单的“快速表单”命令(或右键单击表单,从弹出的快捷菜单中选择“生成器”命令)。(3)添加其它控件对象(如按钮或按钮组)(4)执行表单,9.2用表单设计器建立表单,9.2.3表单设计中常用的工具栏 1.表单控件工具栏,9.2用表单设计器建立表单,9.2.3表单设计中常用的工具栏 2.布局工具栏,9.2用表单设计器建立表单,9.2.3表单设计中常用的工具栏 3.调色板工具栏,9.2用表单设计器建立表单,9.2.3表单设计中常用的工具栏 4.表单设计器工具栏,9.2用表单设计器建立表单,9.2.4数据环境设计器 数据环境(DataEnvironment)泛指设计表单或

4、表单集时使用的数据源,包括表、视图和关系。数据环境是一个容器对象。1.游标(Cursor)类对象当存储在磁盘上的一个表文件被打开时,系统会在内存中建立一个该表的临时文件,内存中的临时文件实际上是磁盘文件的一个映象,所有数据库的操作修改命令都是针对这个映象进行的,当发布数据更新TableUpdate()命令或关闭数据文件的命令后,系统再把这个映象文件存入磁盘,从而完成对磁盘文件的修改。Cursor类对象也称为游标对象,它用来定义临时表的相关信息。Cursor类只支持Init、Destroy、Error事件。,9.2用表单设计器建立表单,9.2用表单设计器建立表单,2.关系(Relation)类对

5、象如果表单的数据源有多个表且表间建立了一定的关联,则数据环境下将自动产生一个(或多个)新的Relation类对象。,9.2用表单设计器建立表单,3.数据环境(DataEnvironment)容器数据环境是包括Cursor和Relation两类对象的一个容器,该容器和其所含对象一起定义了表单中的数据源。,9.2用表单设计器建立表单,3.数据环境(DataEnvironment)容器除支持Init、Destroy、Error事件外,DataEnvironment对象还支持两个事件和两个方法:BeforeOpenTable()事件:打开表时发生,其事件代码在表打开之前执行。AfterCloseTab

6、le()事件:关闭表时发生,其事件代码在表关闭后执行。CloseTable方法:用于关闭数据环境中所定义的所有数据源(表、视图)。OpenTable方法:用于打开数据环境中所定义的所有数据源(表、视图)。,9.2用表单设计器建立表单,4.数据环境设计器数据环境设计器主要用以可视化地创建和修改数据环境。数据环境一旦建立,表单被打开或运行时,数据环境中的表或视图便自动打开;表单被关闭或释放时,表或视图也将随之自动关闭。新建或打开表单后打开数据环境设计器的方法如下:(1)选择“显示”菜单中的“数据环境”;(2)鼠标右键单击表单窗口中的任意空白区域,从弹出的快捷菜单中选择“数据环境”;(3)打开“表单

7、设计器”工具栏,选择其中的“数据环境”工具按钮。,9.2用表单设计器建立表单,4.数据环境设计器表添加后,如果有两个或多个表,假如这些表原来已存在永久关系,则在两表之间会自动出现表示两表关系的连线;如未建立永久关系,用户也可以在数据环境中临时建立,建立方法是:选择关联字段,将其从父表中拖到子表对应字段上(如果子表中对应字段未建索引,系统将自动建立以该字段为关键字的索引)。如果要解除关联,只需选中关联线条,按Del键删除即可。,9.2用表单设计器建立表单,9.2.5 在表单上设置控件 1.创建控件 2.调整控件的位置 3.调整控件的Tab键按键顺序,9.3 表单,9.3.1 表单的属性,9.3

8、表单,9.3.1 表单的属性(续),9.3 表单,9.3.2 表单的事件和方法,9.4 常用表单控件,9.4.1 标签,9.4 常用表单控件,9.4.1 标签(续),9.4 常用表单控件,例9.3 设计一个学生学籍管理系统的欢迎界面。,图9.22标签应用示例,9.4 常用表单控件,9.4.2 文本框,9.4 常用表单控件,9.4.2 文本框1.value属性Value属性用于指定文本框的值,并在框中显示出来。Value属性的值既可在属性窗口中输入或编辑;也可以用命令来设置,例如:THIS.VALUE=”表单”。Value值可以为数值型、字符型、日期型或逻辑型4种类型之一,例如:0,(无),.F

9、.。其中(无)表示字符型,且为默认类型。属性值设置后,若想恢复为默认值只需右键单击,从弹出的快捷菜单中选择“重置为默认值”命令即可。,9.4 常用表单控件,2.控件与数据绑定文本框值除可通过直接输入或设置Value属性来得到外,还可以通过数据绑定来取得数据。(1)数据绑定的概念控件的数据绑定是指将控件与某个数据源联系起来。实现数据绑定需为控件指定数据源,而数据源则由控件的ControlSource属性来指定。数据源有字段和变量两种,前者来自数据环境中的表,可以供用户在ControlSource属性中选用。(2)数据绑定的作用文本框与数据绑定后,控件值便与数据源的数据一致了。以字段数据为例,此时

10、的控件值由字段的当前值决定,而字段值也将随控件值的改变而改变,即值的传递是双向的。,9.4 常用表单控件,3.Format和InputMask属性Format属性用于指定某个控件的Value属性的输入输出格式,指定整个输入区域的特性,可以组合使用多个格式代码。InputMask属性用于指定控件中的数据的输入掩码和显示方式,掩码格式用于更方便和更清楚地显示字符型数据和数值型数据。Format和InputMask属性形成对照,前者对输入区域的所有输入都有影响,后者中每种输入掩码对应输入域中的一个输入项。,9.4 常用表单控件,3.Format和InputMask属性表9.10 文本框的Format

11、属性设置及说明,9.4 常用表单控件,3.Format和InputMask属性,9.4 常用表单控件,文本框的常用事件主要有:Valid:当文本框失去焦点前发生。所谓焦点,就是指文本框处于选中状态,失去焦点,就是刚离开选中状态,获得焦点,就是刚进入选中状态。InteractiveChange:当文本框的值发生改变时发生。GotFocus:当文本框得到焦点时发生。LostFocus:当文本框失去焦点时发生。文本框的常用方法是SetFocus,作用是使文本框获得焦点。,9.4 常用表单控件,4.文本框生成器生成器是用户设置属性的控件属性的向导,可以利用生成器快速地设置好控件对象的常规属性。多数控件

12、具有生成器,但并非所有控件都有。文本框生成器的打开方法为:首先利用“表单控件”工具栏创建好一个文本框,然后通过鼠标右键单击文本框,从弹出的快捷菜单中选择“生成器”,则将弹出“文本框生成器”对话框。,9.4 常用表单控件,例9.4 设计一个如图9.24所示的表单,功能为:单击表单计算三角形的面积,表单运行后自动居中。其中三角形三边的值通过三个文本框输入,计算出的面积显示在一个标签上。,图9.24“计算三角形的面积”表单,9.4 常用表单控件,9.4.3 编辑框 编辑框也是用来输入和显示数据的。在编辑框中允许用户编辑长字段或备注字段文本,允许自动换行并能用方向键、PageUp和PageDown键以

13、及滚动条来浏览文本。编辑框和文本框的主要区别是编辑框只能用于输入或编辑文本数据,即字符型数据;而文本框则适用于数值、字符等四种类型的数据。文本框只能供用户键入一段数据;而编辑框则能输入多段文本,即回车符不能终止编辑框的输入。,9.4 常用表单控件,9.4.3 编辑框,编辑框的属性设置也可以通过其编辑框生成器来完成。编辑框生成器与文本框生成器大同小异,可参照文本框生成器使用。,9.4 常用表单控件,例9.5 设计一个如图9.25所示的能显示STUDENT表中当前记录的学生学号、姓名(学号、姓名不能修改),并能显示和修改个人简历信息的表单。,图9.25学生简历的显示和修改,9.4 常用表单控件,9

14、.4.4 命令按钮,9.4 常用表单控件,(1)对于文字命令按钮,超宽的中文标题若要折行显示,只需将WordWrap属性设置为.T.,此时与AutoSize属性无关。(2)在标题中可以增加热键,增加方法为:在Caption属性值中某字符前插入符号“”,该字符就成为热键,例如Caption属性设置为“Cmd1”则表示C为热键。(3)隐藏按钮有两种方法:一是设置Style属性值为1,二是设置Visible属性值为.F.,但是Visible属性设置为.F.后,命令按钮被隐藏且不能被操作;而通过Style属性设置命令按钮不可见后,鼠标移到命令按钮的位置上仍能操作按钮。,9.4 常用表单控件,命令按钮的

15、常用事件如下:Click单击鼠标左键时发生,这是最常用的一种事件,一般使用该事件编写代码来实现按钮对应的功能。DblClick双击鼠标左键时发生。RightClick单击鼠标右键时发生。Init建立命令按钮对象时发生。Destroy从内存中释放命令按钮时发生。,9.4 常用表单控件,例9.6 建立一个如图9.26所示的表单例9.6.SCX,该表单能实现对TEACHER表中的记录进行修改。要求数据记录浏览时不能进行修改(表单的初始状态为浏览状态),只有点击“修改”按钮后才能进行记录修改;当记录指针到文件尾时,“下一条”按钮呈不可用状态;当记录指针到文件头时,“上一条”按钮呈不可用状态。,9.4

16、常用表单控件,9.4 常用表单控件,例9.7 设计一个如图9.27所示的验证帐号和密码的表单。若帐号和密码输入错,则用对话框提示。其中帐号输入完毕,即文本框失去焦点时则判断,若帐号错应使录入帐号的文本框清空,等待用户重新输入正常的帐号。对应于密码输入的文本框初始为只读,只有当帐号输入正确时,才能输入密码。密码共可输入三次,单击“确定”按钮时判断,三次输错则禁止进入系统。图9.27所示分别是表单界面和帐号错提示信息框、成功登录提示信息框、密码错提示信息框。,9.4 常用表单控件,图9.27帐号和密码验证表单,9.4 常用表单控件,*TEXT1.LOSTFOCUS事件代码IF THIS.VALUE

17、123456&”123456”为预设的密码,也可以设为别的。MESSAGEBOX(帐号错误,请重输!,错误)THIS.VALUE=&为重新输入清空文本框ELSETHISFORM.TEXT2.READONLY=.F.&帐号输入正确时,即可输入密码 THISFORM.TEXT2.SETFOCUS&文本框2获得焦点ENDIF*COMMAND2.CLICK事件代码THISFORM.RELEASE&关闭表单,9.4 常用表单控件,*COMMAND1.LICK事件代码N=N+1&单击一次表示输入了一次密码,次数增1IF THISFORM.TEXT2.VALUE=ABC&”ABC”为预设密码MESSAGEB

18、OX(欢迎进入本系统,0+64,欢迎)THISFORM.RELEASEELSEIF N3A=MESSAGEBOX(密码错误,是否重新输入!,5+16,错误)IF A=2 MESSAGEBOX(放弃输入!,64,退出)THISFORM.RELEASEELSE THISFORM.TEXT2.VALUE=”&为重新输入清空文本框&使文本框获得焦点,即光标在内闪动ENDIFELSEMESSAGEBOX(密码错误,你无权进入!,0+64,退出)THISFORM.RELEASEENDIFENDIF,9.4 常用表单控件,MessageBox()函数:使用格式:MessageBox(提示,对话框类型,标题)

19、提示字符串表达式,在对话框中作为信息显示,可为汉字,若要在多行显示,必须在每行行末加回车Chr(13)和换行Chr(10)控制符。不能省略该项。标题字符串表达式,在对话框的标题区显示;若省略,则把应用程序名放入标题栏中。对话框类型整型表达式,决定信息框按钮的数目和类型及出现在信息框上的图标类型,其设置见表9.18。,9.4 常用表单控件,9.4 常用表单控件,9.4.5 命令按钮组 命令按钮组控件是表单上的一种容器,它可以包含若干个命令按钮,并能统一管理这些命令按钮。命令按钮组与组内的各命令按钮都有自己的属性、事件和方法程序,因而既可以单独操作各命令按钮,也可以作为一个组控件进行统一操作。可以

20、利用命令按钮生成器快速地设置按钮组的一些常规属性。,9.4 常用表单控件,例9.8 设计一个如图9.29所示的学生数据维护表单。,9.4 常用表单控件,9.4 常用表单控件,对于命令按钮组,有两种代码编写法,一是直接对Commandgroup1内的各个按钮分别编写Click事件代码,二是将这些代码编写在Commandgroup1的Click事件过程内。本例采用的是第二种方法:X=THIS.VALUEDO CASECASE X=1SKIP-1IF BOF()THIS.COMMAND1.ENABLED=.F.ENDIFTHIS.COMMAND2.ENABLED=.T.CASE X=2SKIP IF

21、 EOF()THIS.COMMAND2.ENABLED=.F.ENDIFTHIS.COMMAND1.ENABLED=.T.,9.4 常用表单控件,CASE X=3APPEND BLANK&追加一条空白记录供数据录入CASE X=4DELETE&为当前记录打删除标记I=MESSAGEBOX(要物理删除吗?,4+32+256,删除确认)IF I=6&用户在“删除确认”对话框中选择了“是”按钮PACK&物理删除当前记录ENDIFCASE X=5THISFORM.RELEASEENDCASETHISFORM.REFRESH,9.4 常用表单控件,9.4.6 选项按钮组 选项按钮组控件和命令按钮组控件类

22、似,也是容器类控件。单选按钮不能独立存在,通常选项按钮组中包含多个单选按钮,当用户选定其中一个时,其它选项按钮都会变成未选定状态。用户可以对整个选项按钮组设置属性和编写代码,也可以对组中每个按钮设置属性和编写代码。,9.4 常用表单控件,9.4 常用表单控件,选项按钮组的常用事件有:Click单击选项按钮组时触发。InteractiveChange使用鼠标或键盘选择不同选项时触发。用键盘选择时,只需先用上、下、左、右光标键选择好选项,再按下空格键或回车键选中选项。选项按钮组也可以使用其生成器方便地设置它的属性,9.4 常用表单控件,例9.9 编写如图9.31所示的表单,表单功能是通过对选项按钮

23、组中选项的选择,分别查看教师中不同职称的最高工资、最低工资和平均工资。,图9.31 工资查看表单,9.4 常用表单控件,主要事件代码:*FORM1.INIT事件代码SET TALK OFF&关闭屏幕会话功能USE TEACHER&打开TEACHER表THISFORM.OPTIONGROUP1.VALUE=0&使选项按钮组不选中任何选项,9.4 常用表单控件,*OPTIONGROUP1.INTERACTIVECHANGE事件代码X=THIS.VALUEDO CASE CASE X=1 CALCULATE MAX(基本工资),MIN(基本工资),AVG(基本工资)TO MX,MN,AG FOR 职

24、称=教授 THISFORM.TEXT1.VALUE=MX THISFORM.TEXT2.VALUE=MN THISFORM.TEXT3.VALUE=AG CASE X=2 CALCULATE MAX(基本工资),MIN(基本工资),AVG(基本工资)TO MX,MN,AG FOR 职称=副教授 THISFORM.TEXT1.VALUE=MX THISFORM.TEXT2.VALUE=MN THISFORM.TEXT3.VALUE=AG,9.4 常用表单控件,CASE X=3 CALCULATE MAX(基本工资),MIN(基本工资),AVG(基本工资)TO MX,MN,AG FOR 职称=讲师

25、 THISFORM.TEXT1.VALUE=MX THISFORM.TEXT2.VALUE=MN THISFORM.TEXT3.VALUE=AGCASE X=4 CALCULATE MAX(基本工资),MIN(基本工资),AVG(基本工资)TO MX,MN,AG FOR 职称=助教 THISFORM.TEXT1.VALUE=MX THISFORM.TEXT2.VALUE=MN THISFORM.TEXT3.VALUE=AGENDCASE,9.4 常用表单控件,9.4.7 复选框 复选框可以用来表示某些状态是否成立,其值是一个逻辑量。复选框也是一种经常使用的控件。复选框的常用属性主要有:Capt

26、ion主要用于指定复选框的提示文字。Value主要用于指定复选框的初始状态和数据类型,可为0、1或.T.和.F.或2。当设定为1或.T.时,复选框的初始状态为选中;设定值为0或.F.时表示没有选中复选框;当设定值为2(或NULL)时复选框显示为灰色。如果复选框的值与表中的内容有关,还应设置复选框的数据源。常用事件有Click和InteractiveChange,其触发方式类似于选项按钮组。,9.4 常用表单控件,例9.10 创建如图9.32所示表单。表单功能为使用复选框调整字体格式,使用命令按钮修改颜色。,9.4 常用表单控件,主要事件代码:*CHECK1.CLICK事件代码IF THIS.V

27、ALUE=1THISFORM.LABEL1.FONTBOLD=.T.ELSETHISFORM.LABEL1.FONTBOLD=.F.ENDIF*CHECK2.CLICK事件代码IF THIS.VALUE=1THISFORM.LABEL1.FONTITALIC=.T.ELSETHISFORM.LABEL1.FONTITALIC=.F.ENDIF,9.4 常用表单控件,*CHECK3.CLICK事件编写IF THIS.VALUE=1THISFORM.LABEL1.FONTUNDERLINE=.T.ELSETHISFORM.LABEL1.FONTUNDERLINE=.F.ENDIF*COMMAND1

28、.CLICK事件代码THISFORM.LABEL1.FORECOLOR=GETCOLOR()&打开颜色对话框*COMMAND2.CLICK事件代码:RELEASE THISFORM&释放表单,9.4 常用表单控件,9.4.8 列表框和组合框 列表框主要用于显示供用户选择的列表项。当列表很多而不能同时显示时,可以利用滚动条上下滚动显示。列表框不允许用户输入新值。组合框和列表框非常相似,但二者也有差别,一是在外观上,列表框任何时候都显示一个列表,而组合框平时只显示一个项,当用户单击组合框的向下三角形按钮时才显示可滚动下拉列表。二是组合框又分为下拉组合框与下拉列表框两类(由Style属性指定),前者

29、允许键入数据项,而列表框与下拉列表框只有显示和选择功能,无输入功能。,9.4 常用表单控件,9.4 常用表单控件,9.4 常用表单控件,其中列表框ControlSource、值数据源(RowSource)以及值源类型(RowSourceType)等和组合框中相应属性功能一样。而列表框、组合框的值源类型如表9.24所示。,9.4 常用表单控件,9.4 常用表单控件,列表框有如下常用方法程序:AddItem给RowSourceType属性为0的列表添加一项数据项。格式:对象.AddItem(cItem,nItem,nColumn)说明:cItem是表示新项的字符型表达式。nItem用来指定新项的位

30、置,当Sorted属性为.T.时,新项将按字母序插入到列表中,否则将被添加到列表末尾。nColumn用来指定放置新项的列,默认值为1。RemoveItem从RowSourceType属性为0的列表中删除一项。格式:对象.RemoveItem(nItem)nItem表示被移除项的序号Requery当RowSource中的值改变时更新列表。Refresh刷新列表框的值。,9.4 常用表单控件,列表框有下列常用事件:Click单击列表框时发生。Init列表框被初始化时发生。InteractiveChange用鼠标或键盘选择列表框的值,导致列表框的值改变时发生。KeyPress用户在对象上按住并释放一

31、个键盘上的键时发生。,9.4 常用表单控件,例9.11 设计一个如图9.34所示的教师任课输入表单。,图9.34 教师任课输入表单,9.4 常用表单控件,表9.25 表单和控件的主要属性设置情况,9.4 常用表单控件,主要事件过程代码:,9.4 常用表单控件,*COMMAND2.CLICK事件代码SELECT 1JSH=教师编号SELECT 2KCH=课程编号SELECT 3LOCATE FOR 教师编号=ALLTRIM(JSH)AND 课程编号=ALLTRIM(KCH)IF FOUND()MESSAGEBOX(已有该课程,请核对后重选!)ELSEAPPEND BLANKREPLACE 教师编

32、号 WITH JSH,课程编号 WITH KCHENDIF,9.4 常用表单控件,例9.12 设计一个如图9.35所示的教师任课课程添加和删除表单。,图9.35 教师任课信息管理表单,9.4 常用表单控件,表9.26 表单和控件的主要属性设置情况,9.4 常用表单控件,主要事代过程代码:*FORM1.INIT事件代码PUBLIC JSH,KCHSELE 1USE TEACHER SELE 2USE COURSESELE 3USE TEACHING*COMBO1.INTERACTIVECHANGE事件代码THISFORM.LIST1.ROWSOURCE=SELECT 课程名 FROM TEACH

33、ER,COURSE,TEACHING;INTO CURSOR TEMP1 WHERE TEACHER.教师编号=TEACHING.教师编号;AND COURSE.课程编号=TEACHING.课程编号 AND TEACHER.姓名=THIS.VALUE,9.4 常用表单控件,*COMMAND1.CLICK事件代码SELECT 1JSH=教师编号SELECT 2KCH=课程编号SELECT 3LOCATE FOR 教师编号=ALLTRIM(JSH)AND 课程编号=ALLTRIM(KCH)IF FOUND()MESSAGEBOX(已有该课程,请核对后重选!)ELSEAPPEND BLANKREPL

34、ACE 教师编号 WITH JSH,课程编号 WITH KCHENDIFTHISFORM.COMBO2.VALUE=THISFORM.COMBO1.INTERACTIVECHANGE()THISFORM.REFRESH,9.4 常用表单控件,*COMMAND2.CLICK事件代码SELECT 1JSH=教师编号SELECT 2LOCA FOR 课程名=ALLTRIM(THISFORM.LIST1.VALUE)&查找列表框中所选课程KCH=课程编号&记下列表框中所选课程的课程编号SELECT 3ANS=MESSAGEBOX(确实要删除吗?,1+32)&删除确认IF ANS=1DELETE ALL

35、 FOR 教师编号=ALLTRIM(JSH)AND 课程编号=ALLTRIM(KCH)PACK&删除所选记录ENDIFTHISFORM.COMBO1.INTERACTIVECHANGE()&刷新列表框中的内容THISFORM.REFRESH,9.4 常用表单控件,9.4.9 微调控件 微调控件主要用于接受给定范围内的数值输入。它既可以用键盘输入值,也可以单击该控件的上箭头或下箭头按钮来增减其当前值。如Teacher表的基本工资字段,如果将其与微调控件绑定,则可以利用微调控件来输入或使用控件的上、下箭头按钮修改当前记录的基本工资值。,9.4 常用表单控件,表9.27 微调控件的常用属性,9.4

36、常用表单控件,微调控件的常用事件有:DownClick按微调控件的向下箭头按钮时发生。UpClick按微调控件的向上按钮时发生。例9.13 设计一个如图9.36所示的课程学时和学分调整表单。,图9.36 课时和学分调整表单,9.4 常用表单控件,表9.28 表单和控件的主要属性设置情况,9.4 常用表单控件,9.4.10 图像 图像控件主要用于图形文件的输出。由于图像控件可以在程序运行的动态过程中加以控制,因此可以实现系统窗口的动态界面功能。表9.29 图像控件的主要属性,9.4 常用表单控件,9.4.11 计时器 计时器控件与用户的操作独立。它只对时间做出反应,以一定的间隔重复地执行某种操作

37、,即它能周期性地按时间间隔自动执行它的Timer事件代码,在应用程序中常用来处理反复发生的动作。在VFP6中,表单运行后,计时器控件为隐藏不可见对象。表9.30 计时器控件的常用属性,9.4 常用表单控件,例9.14 设计一个如图9.37所示的蝴蝶飞舞表单。,图9.37 蝴蝶飞舞表单,9.4 常用表单控件,表9.31“蝴蝶飞舞”表单的对象及属性设置,主要事件过程代码:*FORM1.LOAD(或FORM1.INIT)事件代码PUBLIC FLAGFLAG=.T.,9.4 常用表单控件,*TIMER1.TIMER事件代码IF THISFORM.IMGMAIN.LEFT THISFORM.WIDTH

38、 THEN THISFORM.IMGMAIN.LEFT=0 THISFORM.IMGMAIN.TOP=THISFORM.HEIGHT/2ENDIFTHISFORM.IMGMAIN.LEFT=THISFORM.IMGMAIN.LEFT+10THISFORM.IMGMAIN.TOP=THISFORM.IMGMAIN.TOP-2IF FLAG THEN THISFORM.IMGMAIN.PICTURE=D:MYVFP蝴蝶闭.BMPELSE THISFORM.IMGMAIN.PICTURE=D:MYVFP蝴蝶开.BMPENDIFFLAG=NOT FLAG,9.4 常用表单控件,9.4.12 表格表格是

39、一种将数据以表格形式表示出来的控件。表格提供了一个全屏幕输入输出数据表记录的方式,表格中分为若干行和列,每一个列也是一个对象,称为列对象,因而表格是一种以行列方式显示数据的容器控件。表格中的每列又由列标题和列控件构成。1.表格的组成(1)表格(Grid):由一个或若干个列组成。(2)列(Column):一列可显示表的一个字段,列由列标题和列控件组成。(3)列标题(Header1):默认显示字段名,允许修改。(4)列控件(例如Text1):一列必须设置一个控件,该列中的每个单元格都可用此控件来显示字段值。列控件默认为文本框,但允许修改为与本列字段数据的类型相容的控件。如字段是逻辑型的,则可以使用

40、复选框控件。,9.4 常用表单控件,2.表格中主要控件的常用属性、事件和方法表格、列、列标题和列控件都有自己的属性、事件和方法程序,其中表格和列都是容器。表格的常用属性见表9.32,列控件的常用属性见表9.33。,9.4 常用表单控件,表9.32 表格的常用属性,9.4 常用表单控件,表9.33 列控件的常用属性,表格一般用以显示数据,故很少针对表格的事件单独编写代码。表格中最常用的方法是Refresh,使用方法和其它控件类似。,9.4 常用表单控件,3.表格控件的创建(1)利用数据环境创建(2)利用表格生成器创建 4.表格的编辑将表格先选定,单击鼠标右键,从弹出的快捷菜单中选择“编辑”命令,

41、则表格将出现有蓝色虚线边框的编辑状态,在编辑状态下可以用鼠标直接选择列标题或列控件对象,然后对其属性进行修改,也可以直接从“属性”窗口的对象列表框中选择相应的对象后直接对对象的属性进行设置。,9.4 常用表单控件,(1)修改列标题用代码修改:在表格Init事件中编写代码Thisform.Grid1.Column2.Header1.Caption=“教师姓名”,可将上述表格中的第2列的列标题改为“教师姓名”。在属性窗口中修改:在属性窗口的对象列表中按照从容器对象到控件对象的次序,找到某列下的Header1对象后释放鼠标,然后修改其Caption属性。(2)调整列高行宽(3)列的增删列的增删主要方

42、法有如下几种,一是修改表格的ColumnCount属性可以改变表格的列数;二是打开表格生成器,在表格项选项卡中多选或少选字段来改变列数;三是在表格的编辑状态下,用鼠标单击某列(列标题下面),然后按Del键可以删除该列。,9.4 常用表单控件,例9.15 设计一个如图9.39所示的教师任课信息查询表单。,9.4 常用表单控件,组合框Combo1.IntereactiveChange事件过程代码如下:SELECT TEACHINGTHISFORM.LABEL1.CAPTION=THIS.VALUEX=THIS.VALUESET FILTER TO 教师编号=ALLTRIM(X)THISFORM.R

43、EFRESH,9.4 常用表单控件,例9.16 设计一个如图9.41所示的表数据浏览表单。,图9.41 表数据浏览表单,9.4 常用表单控件,主要事件过程代码如下:*FORM1.INIT事件代码THISFORM.OPTIONGROUP1.VALUE=1THISFORM.GRDSTUDENT.VISIBLE=.T.THISFORM.GRDTEACHER.VISIBLE=.F.THISFORM.GRDSTUDING.VISIBLE=.F.THISFORM.GRDTEACHING.VISIBLE=.F.THISFORM.GRDCOURSE.VISIBLE=.F.THISFORM.REFRESH,9.

44、4 常用表单控件,*OPTIONGROUP1.INTEREACTIVECHANGE事件代码DO CASE CASE X=1 THISFORM.GRDSTUDENT.VISIBLE=.T.&使学生表对应的表格控件可见 THISFORM.GRDTEACHER.VISIBLE=.F.THISFORM.GRDSTUDING.VISIBLE=.F.THISFORM.GRDTEACHING.VISIBLE=.F.THISFORM.GRDCOURSE.VISIBLE=.F.CASE X=2 THISFORM.GRDSTUDENT.VISIBLE=.F.THISFORM.GRDTEACHER.VISIBLE=

45、.T.THISFORM.GRDSTUDING.VISIBLE=.F.THISFORM.GRDTEACHING.VISIBLE=.F.THISFORM.GRDCOURSE.VISIBLE=.F.,9.4 常用表单控件,CASE X=3 THISFORM.GRDSTUDENT.VISIBLE=.F.THISFORM.GRDTEACHER.VISIBLE=.F.THISFORM.GRDSTUDING.VISIBLE=.T.THISFORM.GRDTEACHING.VISIBLE=.F.THISFORM.GRDCOURSE.VISIBLE=.F.CASE X=4 THISFORM.GRDSTUDENT

46、.VISIBLE=.F.THISFORM.GRDTEACHER.VISIBLE=.F.THISFORM.GRDSTUDING.VISIBLE=.F.THISFORM.GRDTEACHING.VISIBLE=.T.THISFORM.GRDCOURSE.VISIBLE=.F.,9.4 常用表单控件,CASE X=5 THISFORM.GRDSTUDENT.VISIBLE=.F.THISFORM.GRDTEACHER.VISIBLE=.F.THISFORM.GRDSTUDING.VISIBLE=.F.THISFORM.GRDTEACHING.VISIBLE=.F.THISFORM.GRDCOURSE

47、.VISIBLE=.T.ENDCASETHISFORM.REFRESH,9.4 常用表单控件,9.4.13 页框 页框控件对应的界面实际上就是我们经常使用的选项卡界面,一个页框可以有两个以上的页面,所以页框是可以包含多个页面的一种容器,而每个页面本身也是一种容器,页面上可以放置任何控件、容器和自定义对象。,9.4 常用表单控件,例9.17 设计一个如图9.42所示的数据浏览表单。其中页框有3个页面,“学生表”页面显示STUDENT表中的所有数据,“课程表”页面显示COURSE表中的所有数据,而“学生课程成绩”页面中的数据来源于一个查询文件,该查询文件中数据包括STUDENT表中的学号、姓名列,

48、COURSE表中的课程编号和课程名列,以及STUDING表中成绩列。,图9.42 数据浏览表单,9.4 常用表单控件,图9.43 学生课程成绩查询,9.4 常用表单控件,表9.35 数据浏览表单的主要属性设置情况,9.4 常用表单控件,9.4.14 ActiveX控件和ActiveX绑定控件 1.ActiveX控件ActiveX是Microsoft对于一系列策略性面向对象程序技术和工具的称呼,其中主要的技术是组件对象模型(COM)。而ActiveX控件就是指符合ActiveX标准的控件,其数量现已超过了1000种,Windows的SYSTEM文件夹中含有的众多的带.OCX扩展名的文件,都属于A

49、ctiveX控件。,9.4 常用表单控件,2.ActiveX绑定控件在介绍表中字段的数据类型时,曾介绍过一个重要的数据类型通用数据类型,该类型字段变量可存放文本、声音、图片和视频数据等。利用ActiveX绑定控件可以在表单上显示通用型字段数据,如例9.1中照片数据的显示。将表单控件工具栏中的“ActiveX绑定控件(OleBoundControl)”与表中的通用字段绑定,就能显示通用型字段中的OLE对象,还可以调出创建这些数据的源应用程序,从而以可视化方式查看或操作这些数据。利用控件工具栏创建“ActiveX绑定控件”对象后,只需设置该对象的ControlSource属性为表中的通用型字段,例

50、如照片字段即可。,9.5 多表单操作,9.5.1单文档和多文档界面应用程序界面一般分为应用程序窗口和文档窗口两种。其中,应用程序窗口可包含标题栏、工具栏等,而文档窗口出现在应用程序窗口内,可以和应用程序窗口共用标题栏。例如执行MicroSoft Word,就会出现一个Word应用程序窗口,如果在Word中新建一个Word文档或打开一个Word文档,则还会出现一个文档窗口,文档窗口在应用程序窗口内部。使用VFP6创建的应用程序界面一般分为多文档界面(Multiple-Document Interface,简称MDI)和单文档界面(Single-Document Interface,简称SDI)两

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

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号