《表单设计》PPT课件.ppt

上传人:小飞机 文档编号:5602582 上传时间:2023-08-01 格式:PPT 页数:78 大小:511KB
返回 下载 相关 举报
《表单设计》PPT课件.ppt_第1页
第1页 / 共78页
《表单设计》PPT课件.ppt_第2页
第2页 / 共78页
《表单设计》PPT课件.ppt_第3页
第3页 / 共78页
《表单设计》PPT课件.ppt_第4页
第4页 / 共78页
《表单设计》PPT课件.ppt_第5页
第5页 / 共78页
点击查看更多>>
资源描述

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

1、第九章表单设计,学习目标:,1、理解表单的概念、掌握有关表单的基础知识;2、熟练掌握“表单设计器”的使用和属性设置;3、熟练掌握常用表单的设计和应用。,9.1表单基础知识,一、表单概述,表单是VFP常用的工具并具有自己的控件、属性、事件、方法程序的容器对象,各种对话框和窗口是表单不同的外观表现形式,为尽可能方便、直观地完成数据信息管理工作提供了条件。,1、表单控件,表单中控件有两种,一种与数据绑定,这种控件与数据源有关,数据源包括表、视图等,这类控件需要设置控制源属性,另一类不需要与数据绑定,用户对控件输入或选择的值只作为属性设置,不保存。,在表单中可以使用的Windows交互式操作界面常用的

2、15种标准控件分别是:复选框、组合框、编辑框、文本框、列表框、命令按钮、线条、形状控件、图像、微调控件、计时器、标签、ActiveX绑定控件、ActiveX控件、超级链接,还有表格、命令按钮组、选项按钮组、页面框等4种容器控件。,2、表单属性,表单属性定义表单及其控件的性质、特征,每个表单及其控件都有它的一组属性,通常这些属性大多数是相同的。表单及控件属性既可以在属性窗口设置,也可以在代码窗口设置,通过表单运行来进行修改。,表单和控件常用属性如下表:,2、表单事件,表单事件是表单可以识别和响应的行为和动作。表单常用时间如下表:,4、表单方法程序,表单方法程序是对象能够执行的、完成相应任务的操作

3、命令代码的集合。常用方法见下表:,5、表单数据环境,表单数据环境是指创建表单时需要打开的全部表、视图和关系。在表单数据环境中,可以添加与表单相关的数据表或视图,并设置好表单、控件与数据表或视图中字段的关联,形成一个完整的数据体系。,常用的数据环境及数据源属性见下表:,6、创建表单的一般步骤,(1)创建一个新表单,(2)使用表单控件工具栏为表单添加控件,(3)通过属性窗口设置表单和控件属性,(4)如果表单功能与数据表或视图有关,则为表单添加数据环境,(5)为表单和控件事件编写方法程序,(6)保存和执行表单,二、使用表单向导,VFP提供了如下两个不同的表单向导来创建表单:1.如果要创建基于一个表的

4、基本表单,请选择“表单向导”。2.如果要创建包含两个表中按一对多关系链接的数据的表单,请选择“一对多表单向导”。,方法:选择“文件”菜单,选择“新建”按钮,选择“表单”,再选择“向导”选项。,三、使用表单设计器,1、启动表单设计器,命令:creat form|?,功能:建立一个以 命名的新表单,并打开“表单设计器”窗口。,命令:modify form|?,命令:modify form|?,功能:建立或打开一个由 命名的新表单,并打开“表单设计器”窗口。,菜单方式:,新建:选择“文件”菜单,选择“新建”按钮,选择“表单”,再选择“新建”选项。,打开和修改:选择“文件”菜单,选择“打开”按钮,选择

5、“表单文件”,再单击“打开”命令。,2、表单设计器工具栏,工具栏说明:表对象的Tab键顺序;VFP的数据环境;属性窗口;代码窗口;表单控件工具栏;调色板工具栏;布局工具栏;表单生成器;自动格式(启动“自动格式生成器”,为所选表单 控件提供显示风格。),3、表单控件工具栏,4、属性窗口,代码窗口,5、代码编辑窗口,6、数据环境,1、“显示”“数据环境”命令,打开数据环境设计器窗口,在其中创建或修改表单数据环境。系统菜单栏中将增加“数据环境”菜单项。,2、“数据环境”“添加”命令,向数据环境中添加表或视图。,3、“数据环境”“移去”命令,将不需要的表或视图移出数据环境。,4向表单添加字段 表单上产

6、生的控件在很多情况下被用来显示或修改表中的数据,直接从“数据环境设计器”中将需要的字段、表或者视图拖入表单,系统即会在表单上产生相应的控件与字段相联系。,四、执行表单,命令方式:do form,菜单方式:选择要执行的表单空白处右键执行表单,9.2 表单控件的应用,一、控件操作概述,1、创建控件,2、调整控件,3、设置控件属性,选择要创建的控件,在表单上单击。,可以改变控件的大小、位置、排列方式,还可以进行复制、粘贴等操作,二、标签控件,标签主要用于显示一段固定的文本信息字符串,它没有数据源,只需要把显示的字符串直接赋予标签的标题(caption)属性即可。,注意:Caption属性是字符型数据

7、,但在属性窗口键入时不虚要加引号,而在程序代码中修改时需要加上字符串特有标记。,除caption外,标签常用属性及其含义:,例1、设计如书p263页8-3所示登陆系统。,详细步骤参看书上p263p264。,三、文本框控件,文本框控件用于在表单上输入或输出文本,它允许用户添加或编辑保存在表中非备注型字段中的数据,也允许用户直接输入数据。,文本框的绑定数据来源于文本框的controlsorce属性,而文本框另一个重要属性是value,它表示文本框的当前值。,文本框的数据类型有四种:数值型、字符型、日期型和逻辑型,可以通过右键点击”生成器“设置。,文本框常用属性列举:,例2、设置一个登陆窗口,输入用

8、户名和密码,点“清除”,重新输入密码,点“下一个”,显示下一个姓名,点“退出”,退出表单。,步骤:,1、创建如下图所示的控件,command1,command2,command3,text1,text2,2、设置属性选列:,Text1的controlsource属性为stu1表的姓名字段,Text2的password属性为*,3、代码编写:,(1)清除按钮的click事件代码:,thisform.text2.value=“&清空text2&让text2获得焦点,(2)退出按钮的click事件代码:,thisform.release,(3)“下一条”按钮的click事件代码编写:,n=recco

9、unt()if recno()=n go 1 else skipendifthisform.refresh,&n为记录总数,&如果当前记录是最后一条,跳转到第一条,否则跳到下一条。,&刷新文本框text1的当前值。,四、命令按钮控件,命令按钮控件在应用程序中起控制作用,用于完成某一特定的操作,绝大多数的控制行为是通过单击命令按钮来实现操作的。,因此,命令按钮的作用多是通过click事件来体现的。,重要属性:caption 命令按钮上面显示的文本内容,例2:设计一个登陆窗口,若密码输入正确,则退出表单,若密码输入不正确,三次内系统提示“密码错误,请重新输入”,超过三次,系统提示“无权登陆”,再退

10、出表单。假设初始密码为“123”。,步骤1、如图摆放控件,2、属性设置(略),3、代码编写,(1)清除按钮的click事件代码:,thisform.text2.value=“&清空text2&让text2获得焦点,(2)退出按钮的click事件代码:,thisform.release,(3)表单form1的load事件代码:,public i&i用做统计密码输入次数 i=0,(3)“确定”按钮的click事件代码:,i=i+1&每点击确定按钮一次,i加1if i=3&超过3次 messagebox(您无权进入系统,1)thisform.releaseElse&3次以内 if thisform.

11、text2.value=“123“&密码正确 thisform.release else&密码不正确 messagebox(密码错误,请重新输入,1)thisform.text2.value=thisform.text2.setfocus endifendif,Messagebox函数参考书上p268。,五、编辑框,编辑框允许用户编辑长字段或者备注型字段文本,允许自动换行和使用方向键。,例4、设计一个查看学生特长的表单界面。,详细步骤参看书p272。,六、列表框,列表框用于显示供用户选择的列表项。在“列表框”中不允许用户输入新值,只能从现有列表中选择一个值或者多个值。,列表框的主要属性有:,r

12、owsourcetype:列表框数据源类型 rowsource:列表框数据来源 controlsource:保存用户在列表框中选取值的数据表字段 value:列表框当前被选定的值,例5:设计一个如下图所示表单:,list1,数据来源于如下两张表:,商品.dbf,库存.dbf,步骤:,1、摆放控件(略),2、创建数据库,为两表建立永久关系,并在表单数据环境中将两张表添加进来。,3、设置相关控件属性:,对象 属性名 设置值List1 RowSource 商品.商品号,商品名称(可以通过生成器设置)RowSourceType 6-字段 Columncount 2,对象 属性名 设置值text1 Co

13、ntrolsource 商品.商品号text2 Controlsource 商品.商品名称text3 Controlsource 商品.单价text4 Controlsource 库存.数量text5 Controlsource 商品.产地,4、编写代码,(1)List1的Click事件代码:Thisform.ReFresh,(2)命令按钮退出的Click事件代码:release thisform 或 thisform.release,七、组合框,组合框兼有列表框和文本框的功能,主要用语从列表项中选取数据并显示在文本框窗口。,组合框的常用属性和列表框相同,主要区别在于通常只显示一个条目,其他条

14、目通过单击下拉菜单出现。,style属性:值为0:用户既可以在文本框中编辑,也可以在下拉菜单中获得值 值为2:用户只能从列表中选择,八、复选框,复选框的重要属性如下:,属 性说 明Caption指定选择项功能或值的文本ControlSource指定用作选择项的数据源。(通常 是表中的逻辑型字段)Value 返回选择项状态值。选中时 为.T.,未选中时.F.,无效状态 为.Null.,例6、使用复选框设置文本框中字体的式样。表单设计如图,步骤:(1)设置复选框应用示例表单中对象属性如下表:,(3)方法程序代码如下:,Check1的Click事件:,Check2的Click事件:,Check3的C

15、lick事件:,Check4的Click事件:ThisForm.Text1.FontStrikethru=Thisform.check4.Value,九、选项按钮组,选项按钮组 又称为单选按钮,它有两种工作状态:选中的单选按钮,这时圆按钮的中心有黑色圆点醒目显示;未选中的单选按钮,这时圆按钮的中心无黑色圆点。在每组单选按钮中任何时刻最多只能有一个选中的单选按钮。单选按钮的常用属性如下表。,属 性说 明ButtonCount单选按钮的数目ControlSource 单选按钮的数据来源DisabledBackColor单选按钮失效时的背景颜色DisabledForeColor单选按钮失效时的前景颜

16、色Value 当前选中的单选按钮序号 或当前选中的单选按钮的 Caption属性值Caption 单选按钮的显示文本,说明:Value的初始值若为数值型,则该属性返回当前选中的单选按钮的序号;若初始值为字符型,则该属性返回当前选中的单选按钮的Caption属性值。,例7、设计一个简单的计算器表单。详细界面和步骤参考书p222例9-10,注意:文本框数据类型在这里只能为数值型。,十、微调按钮,微调按钮用于接受给定范围内的数值输入。微调按钮的向上箭头和向下箭头允许用户增加和减少数值。默认情况下,每次增加或减少的值为1.00,但可以通过设置微调按钮的Increment属性来设置增加或减少的值。主要属

17、性如下:,属 性说 明Increment 用户每次单击向上或向下按 钮时增加或减少的数值KeyboardHighValue用户能输入到文本框中的最 高值KeyboardLowValue用户能输入到文本框中的最 低值SpinnerHighValue用户单击向上按钮时,微调 控件能显示的最高值SpinnerLowValue用户单击向下按钮时,微调 控件能显示的最低值,例8、利用两个文本框设置微调按钮的最高值和最低值。表单设计如下图。,代码编写如下:,Text1的lostfucos事件:ThisForm.Spinner1.KeyboardHighValue=This.ValueThisForm.Sp

18、inner1.SpinnerHighValue=This.Value,Text2的lostfucos事件:ThisForm.Spinner1.KeyboardLowValue=This.ValueThisForm.Spinner1.SpinnerLowValue=This.Value,Spinner1的click和lostfocus事件:if this.valueendifif this.valueendif,十一、计时器,计时器控件是利用某些具有规律性的周期任务的定时操作。它在表单执行时是不可见的。,计时器的重要属性:Enabled:决定计时器是否工作。Interval:Timer事件之间的

19、毫秒数。,计时器的重要事件:timer:每隔interval所设置的时间数触发一次。,例9、已有一个自由表“电话费.DBF”,设计一个电话费计时表单。要求:1在表单上创建5个“标签”控件,4个文本框控件,1个命令按钮控件。2分别编写“文本框”text1、text2、text3、text4的click事件代码。3编写“命令按钮”command1的click事件代码。,4点击“开始时间”文本框,计时开始;点击“结算时间”文本框,计时结束。点击“通话时间”文本框,计算通话时间(按分钟计);点击“通话费用”文本框,计算通话费用(按每分钟0.3元计算)。5按“退出”按钮,在结束表单之前,先打开表文件电话

20、费.DBF,利用数组把本次话费数据追加到表文件中。结束表单后,浏览电话费.DBF的内容。,步骤:,1、摆放控件,注意,此时需要摆放计时器控件,2、设置相关属性,timer1的enabled属性设置为.f.timer1的interval属性设置为1000,3、代码编写,(1)form1的load事件:public t,(2)text1的click事件(text1数据类型为日期型)this.value=time()t=0 thisform.timer1.enabled=.t.,(3)text2的click事件(text2数据类型为日期型)this.value=time()thisform.time

21、r1.enabled=.f.,(4)text3的click事件(text3数据类型为数值型)this.value=t/60,(5)text3的click事件(text4数据类型为数值型)this.value=round(t/60*0.3,2),(6)timer1的timer事件 t=t+1,(7)command1的click事件declare a(4)use 电话费append blankgather from abrowseusethisform.release,十二、表格,表格控件是将数据以表格形式表示出来的一种容器控件。,常用的表格属性和列属性,属 性 说 明ChildOrder 和父表

22、主关键字相连的子表 中的外部关键字ColumnCount 列的数目。如果ColumnCount 设置为1,表格将具有和表 格数据源中字段一样多的列 表,属性 说明 LinkMaster 显示在表格中的子记录的父表RecordSource 表格中要显示的数据RecordSourceType 表格中显示数据来源于何处:表、别名、查询或用户根据提示选定的ControlSource 在列中要显示的数据。CurrentControl 表格中哪一个表格是活动的。默 认值为“Textl”。如果在列中添加 了一个控件,则可以将它指定为 CurrentControlSparse 如果将Sparse属性设置为.T

23、.,表格中控件只有在列中的单元被 选中时才显示为控件。列中的其他单元将显示文本框中下面的数据值。将Sparse设置为.T.,允许用户在滚动一个有很多显示行的表格时能快速重画,例10、利用磁盘上已有的数据表学生.DBF和成绩.DBF,建立一张查询表单,界面如下图所示.,表文件如图所示:,学生.dbf,成绩.dbf,要求:1.表单以文件名表单1.SCX存盘.2.表单标题为学生查询表.3.在表单上设置标签,组合框和表格控件.4.表格中显示的3个栏目分别为学号.课程号.成绩 5.通过组合框中的学号选择,表格控件中数据随之改变.,步骤:,(1)摆放控件,二、设置数据环境。新建数据库,并将两表添加入数据库

24、,并以关键字段建立永久关系,三、设置相关控件的主要属性,对象 属性名 设置值 Combol rowsource 学生.学号 rowsourcetype 字段GriD1 colummncount 3 linkmaster 学生(父表名)recoRdsourcetype 1-别名 recoRdsource 成绩(数据源)relationalexpr 学号(父与子连接字段),对象 属性名 设置值 column1 controlsource 成绩.学号header1 caption 学号column2 controlsource 成绩.课程号header2 caption 课程号column3 controlsource 成绩.成绩header3 caption 成绩,四、运行表单,修改:将上题的组合框改为文本框,如图所示:,则在文本框的lostfocus事件中写入如下代码:select 学生.学号,成绩.课程号,成绩.成绩 from 学生,成绩 where 学生.学号=成绩.学号 and 学生.学号=alltrim(this.value)into cursor xx“thisform.grid1.recordsource=xx,

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号