《第八章 表单设计及其应用.ppt》由会员分享,可在线阅读,更多相关《第八章 表单设计及其应用.ppt(50页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、,第八章表单设计及其应用,主要内容:,8.1创建表单,8.2表单设计器,8.4表单及控件设计,8.3表单的数据环境,8.1创建表单,1.使用表单设计器创建表单(1)菜单方式(2)命令方式CREATEFORM表单文件名2.使用表单向导创建表单3.保存、修改和运行表单修改:MODIFORM表单文件名运行:DOFORM表单文件名,1.表单设计器环境2.表单控件工具栏3.属性窗口,8.2表单设计器,1.数据环境设计器(1)选择显示|数据环境命令(2)右击表单界面,选数据环境,8.3表单的数据环境,2.数据环境中数据表和字段的处理方法,8.4表单及控件设计,8.4.1无控件表单设计8.4.2标签控件8.
2、4.3文本框控件8.4.4命令按钮控件8.4.5组合框控件8.4.6列表框控件8.4.7复选框控件8.4.8选项按钮组控件,8.4.9计时器控件设计8.4.10编辑框控件8.4.11微调控件8.4.12命令按钮组控件8.4.13表格控件8.4.14页框控件8.4.15图像控件8.4.8线条和形状控件,讲述内容:,例1:设计一个表单,实现标签文字边移动边变色。讲述内容:无控件表单标签控件计时器控件计时器timer事件,我们通过以下实例来介绍各种控件:,步骤1设计一个名为“移动变色”的无控件表单:,基本属性如下:CAPTION:移动变色TOP:77LEFT:20HEIGHT:177WIDTH:33
3、0AUTOCENTER:.T.Alwaysontop:.t.,标签控件,步骤2在无控件表单上设计一标签控件:,主要属性如下:CAPTION:同学们再见TOP:96LEFT:36Name:lbl1FONTSIZE:36FORECOLOR:红AUTOSIZE:.T.BACKSTYLE:0-透明,计时器控件,计时器控件主要利用系统时钟来控制某些具有规律性的周期任务的定时操作。计时器控件不能单独使用,必须与表单等一起使用。它的主要属性:enabled,interval;Enabled用于控制计时器的打开与关闭。Interval用于定义两次计时器事件触发的时间间隔,单位为毫秒。,标签,计时器,计时器的主
4、要属性如下:Enabled:.t.Interval:500,步骤3在表单上设计一计时器控件:,步骤4计时器timer事件代码:,a=int(rand()*255)+1b=int(rand()*255)+1c=int(rand()*255)+1thisform.lbl1.forecolor=rgb(a,b,c)ifthisform.lbl1.left=100thisform.label1.fontsize=10elsethisform.label1.fontsize=thisform.label1.fontsize+5endif,例5:文字变化讲述内容:列表框组合框复选框选项按钮组设计结果如下:
5、,1.列表框(list)主要用来显示选择项,用户可以从中选择一个或多个数据项。主要属性:RowsourceRowsourcetype当rowsourcetype设置值为1,值源类型为值Rowsource写出具体值,之间逗号相隔.当rowsourcetype设置值为6,值源类型为字段,rowsource选择所需字段.,步骤1新建表单,画出列表框(list1),并设置如下属性:Rowsourcetype1值Rowsource黑体,宋体,华文行楷,隶书(注意逗号),运行结果如右图:,2.组合框组合框用于在列表框中选取数据并显示在编辑窗口,它有两种形式:下拉列表框,下拉组合框。主要属性:stylero
6、wsourcerowsourcetypelistindexstype为0时表示下拉组合框,为2时表示下拉列表框。下拉组合框可手写,下拉列表框只能选择。rowsourcetype和rowsource同列表框Listindex指定索引值。,步骤2画出组合框,并设置如下属性:stype0Rowsourcetype1值Rowsource红,黄,绿,黑(注意逗号)输入form1的init事件代码(即初始化事件)为:bo1.listindex=1,运行结果如右图:注意stype属性,3.复选框可以通过单击改变它的状态。复选框的主要属性是:captionvaluecontrolsourceCaption显示
7、在复选框边上的文本当value值为0时,表示没有选择复选框,当value值为1时,表示选中了复选框,当value值为2时,复选框显示灰色。,步骤3画出3个复选框,并分别设置Check1的caption属性为:下划线Check2的caption属性为:倾斜Check3的caption属性为:加粗,运行结果如下:,4.选项按钮组(optiongroup)它可以包含多个选项,通常用于从多项选择中选择其一。主要属性:buttoncount指定按钮个数value选择第几个按钮按钮组中按钮(option)的主要属性:caption显示在按钮边上的文本,步骤4画出1个选项按钮组,设置按钮个数为:4个opti
8、on1的caption属性为:10option2的caption属性为:20option3的caption属性为:30option3的caption属性为:40,注意:选项按钮组为容器类控件,右键-编辑去设置按钮的具体属性。,步骤5设置form1的属性如下:caption文化变化autocenter.t.步骤6表单上画一标签,并设置如下属性:caption文字变化autosize.t.fontsize24,最后设计界面如右图:,步骤7编写列表框(list1)的单击事件(click)代码:,docasecasethis.value=黑体thisform.label1.fontname=黑体cas
9、ethis.value=宋体thisform.label1.fontname=宋体casethis.value=华文行楷thisform.label1.fontname=华文行楷casethis.value=隶书thisform.label1.fontname=隶书endcase,步骤8编写组合框(combo1)的click事件代码:,docasecasethis.value=红thisform.label1.forecolor=rgb(255,0,0)casethis.value=黄thisform.label1.forecolor=rgb(255,255,0)casethis.value=
10、绿thisform.label1.forecolor=rgb(0,255,0)casethis.value=黑thisform.label1.forecolor=rgb(0,0,0)endcase,步骤9编写复选框(check1)的click事件代码:,IFTHIS.VALUE=1THISFORM.LABEL1.FONTBOLD=.T.ELSETHISFORM.LABEL1.FONTBOLD=.F.ENDIF,复选框2和3提示:倾斜:fontitalic加粗:fontbold,步骤10编写复选框(check1)的click事件代码:,docasecasethis.value=1thisform
11、.label1.fontsize=10casethis.value=2thisform.label1.fontsize=20casethis.value=3thisform.label1.fontsize=30casethis.value=4thisform.label1.fontsize=40endcase,文字变化例题结束,共10步骤!,课堂练习:文件名为My_form11,有一组合框,rowsourcetype=1rowsource=农电,农发,植保有一文本框。功能:当在组合框中选定一专业后,立刻在文本框中显示此专业全称,农电为“农业电气与自动化”,农发为“农村区域发展”,植保为“植物保
12、护”。,微调控件,可在微调控件框中输入一个值,或通过按钮选择一个值,其作用是确保数据的使用范围。一般情况下,它主要用于数值型数据的输入。,属性主要包括:Keyboardhighvalue输入的最大值。Keyboardlowvalue输入的最小值。Increment每次单击按钮的增减值。Value初始值。Spinnerhighvalue单击按钮所能达到的最大值Spinnerlowvalue单击按钮所能达到的最小值,例6加减乘除计算设计一个名为my_forma的表单如图所示:,表单上有一个标签:name为la,红色,20号字,autosize为.t.两个微调控件:name分别为s1,s2;最小值为
13、1,最大值为100,增减量为1,初始值为10。一个单选按钮组:4个按钮:Caption分别为加,减,乘,除。,提示:代码写到单选按钮组的interactivechange事件或click事件中。代码提示:thisform.la.caption=str(thisform.s1.value+thisform.s2.value),功能:la上显示s1和s2的加或减或乘或除的值。,例7累加及阶层计算设计一个名为my_formb的表单如图所示:,1个文本框名字为txt12个微调名字分别为sp1,sp2,sp1最大值为50,最小值为1,sp2最大值为90,最小值为51,增加或减少量为22个复选框名字分别为
14、chk1,chk2;初值value=0,表单功能为:用微调选择数值进行运算,单击求阶层,求出sp1至sp2中数值之间的阶层值存放在p变量中,同时显示在txt1中,如sp1中56,sp2中81,则求p=56*57*58*.*81单击求累加,求出sp1至sp2中数值之间的累加和存放在s变量中,同时显示在txt1中,如sp1中60,sp2中90,则求s=60+61+62+.+90提示:循环用For语句,循环变量用i。代码写到复选框的click事件中。,求阶乘p=1fori=thisform.sp1.valuetothisform.sp2.valuep=p*iendforthisform.txt1.v
15、alue=p,求累加和s=0fori=thisform.sp1.valuetothisform.sp2.values=s+iEndforthisform.txt1.value=p,代码提示:,例8查阅学生成绩情况所学控件:表格计步骤如下:(1)新建表单,画一个标签控件,显示文字:学生成绩情况,并自设计字体、字号等。(2)指向表单空白处,按右键,进入数据环境填入学生、成绩、课程三个数据表。并连线。,(3)将三个数据表分别拖入表单中。(4)适应调整三个表格的宽度,运行。运行结果如下:,页框控件,页框名字Pageframe页框的主要属性Pagecount页框中的每一页:例如:pageframe1.p
16、age1例:设计如下表单:有三页:学生,成绩,课程分别显示对应数据.,编辑框控件,编辑框与文本框一样,是用来输入和编辑数据的,但在编辑框中可以编辑备注字段的内容。,1.右击表单数据环境-添入学生.dbf2.对text1设controlsource为学生.姓名3对edit1设controlsource为学生.简历,主要方法:,命令按扭组控件,命令按扭组(commandgroup)是包含一组命令按扭的容器,其作用与命令按扭相同.,书例8.15(211页),This等价于mandgroup1表示命令按扭组本身.Eof()当记录指针指向了第一条记录的上边时,函数值为真.判断文件是否到头.bof()当记录指针指向了最后一条记录的下边时,函数值为真.判断文件是否结束.Skip1意思是指针向下移动一条.Skip-1意思是指针向上移动一条.,注意:refresh命令按扭组结束,连线注意:,控件(control)是放在表单上用以显示数据(label)、执行操作(command)或使表单更易阅读(list,shape)的一种图形对象控件的不同以及处理任务的不同,其属性及其属性的设置、事件处理代码和方法程序也有所不同,根据任务,选择合适的控件,本章结束,谢谢使用!,