版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2020/10/10,1,第八章 表单设计及应用,2020/10/10,2,第八章 表单设计及其应用,主要授课内容:,8.1 创建表单,8.2 表单设计器,8.4 表单及控件设计,8.3 表单的数据环境,2020/10/10,3,8.1 创建表单,1.使用表单设计器创建表单 (1)菜单方式 (2)命令方式 CREATE FORM 表单文件名 2.使用表单向导创建表单 3.保存、修改和运行表单 修改:MODI FORM 表单文件名 运行:DO FORM 表单文件名,2020/10/10,4,1.表单设计器环境 2.表单控件工具栏 3.属性窗口,8.2 表单设计器,2020/10/10,5,1.数
2、据环境设计器 (1)选择显示|数据环境命令 (2)右击表单界面,选数据环境,8.3 表单的数据环境,2.数据环境中数据表和字段的处理方法,2020/10/10,6,8.4 表单及控件设计,8.4.1无控件表单设计 8.4.2标签控件 8.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线条和形状控件,讲述内容:,2020/10/10,7
3、,例1 :设计一个表单,实现标签文字边移动边变色。 讲述内容:无控件表单 标签控件 计时器控件 计时器timer事件 设计步骤如下:,我们通过以下实例来介绍各种控件:,2020/10/10,8,步骤1设计一个名为“移动变色”的无控件表单:,设计一个无控件的表单,基本属性如下: CAPTION:移动变色 TOP:77 LEFT:20 HEIGHT:177 WIDTH:330 AUTOCENTER:.T. Alwaysontop:.t.,2020/10/10,9,标 签控件,标签控件是按一定格式显示在表单上的文本信息,用来显示表单中各种说明和提示。标签的主要属性有:标签的大小,颜色,以及显示信息的
4、内容,字体大小,风格等。,步骤2在无控件表单上设计一标签控件:,主要属性如下: CAPTION:同学们再见 TOP:96 LEFT:36 Name: lbl1 FONTSIZE:36 FORECOLOR:红 AUTOSIZE:.T. BACKSTYLE:0-透明,2020/10/10,10,计时器控件,计时器控件主要利用系统时钟来控制某些具有规律性的周期任务的定时操作。 计时器控件不能单独使用,必须与表单 等一起使用。 它的主要属性:enabled,interval Enabled用于控制计时器的打开与关闭。 Interval用于定义两次计时器事件触发的 时间间隔,单位为毫秒。,2020/10
5、/10,11,标签,计时器,计时器的主要属性如下: Enabled:.t. Interval:500,步骤3在表单上设计一计时器控件:,2020/10/10,12,步骤4 计时器timer事件代码:,a=int(rand( )*255)+1 b=int(rand( )*255)+1 c=int(rand( )*255)+1 thisform.lbl1.forecolor=rgb(a,b,c) if thisform.lbl1.left1 thisform.lbl1.left=thisform.width else thisform.lbl1.left=thisform.lbl1.left-10
6、 endif,变色,移动,2020/10/10,13,例2 :设计一个幸运七游戏,文件名字为my_formxy7.scx。 讲述内容: 命令按钮控件 文本框控件 命令按钮单击(click)事件 设计步骤如下:,2020/10/10,14,命令按钮控件,命令按钮控件主要用来控制程序的执行 过程和数据表中数据的操作等。,步骤1 设计二个命令按钮主要属性如下:,NAME:command1 CAPTION:开始 FONTSIZE:28 FORECOLOR:蓝,NAME:command2 CAPTION:退出 FONTSIZE:28 FORECOLOR:蓝,2020/10/10,15,文本框控件,文本框
7、控件主要用于数据表中某些字段的输入、输出,以及从窗口给内存变量赋值等操作。 文本框控件的属性主要包括:文本框的大小,文本框中输入及输出信息的字体、大小、颜色等。 步骤2 设计三个文本框控件主要属性如下:,NAME:t1 FONTSIZE:20 FORECOLOR:红,NAME:t2 FONTSIZE:20 FORECOLOR:红,NAME:t3 FONTSIZE:20 FORECOLOR:红,2020/10/10,16,幸运七游戏设计界面,文本框t1,文本框t2,文本框t3,标签 lbl1,标签lbl1的主要属性如下: Caption为空,2020/10/10,17,thisform.t1.v
8、alue=int(rand( )*10) thisform.t2.value=int(rand( )*10) thisform.t3.value=int(rand( )*10) if thisform.t1.value=7.or.thisform.t2.value=7.or.thisform.t3.value=7 thisform.lbl1.caption=赢 else thisform.lbl1.caption=输 endif,开始按钮的click事件代码如下:,例2幸运七游戏结束。,2020/10/10,18,例3:密码判断 设计一个名为 mima.scx的表单。如图所示:单击确认按钮判断
9、密码是否为aaa,是执行幸运七游戏,否则释放。要求:text1的最大长度为8。 密码输入时显示为* .,2020/10/10,19,确认的单击事件代码如下: if thisform.text1.value=aaa Do form my_formxy7 else thisform.release Endif 其它提示: 最大长度:maxlength 密码输入显示*: passwordchar,例3密码判断结束,2020/10/10,20,例4:标签缩放 设计一个名为my_form4的表单,实现标签的缩放。计时器的interval属性为300;表单运行时计时器不起作用,即计时器的enabled属性
10、为:.f. 。单击变按钮时,五角星开始变大,字号每次增加5,当字号增加到100时,再从10开始,每次字号增加5到100,这样不断的增加。 单击停止时,五角星停止变化。,2020/10/10,21,提示:标签的caption属性为. 对五角星的变大变小的程序语句写到计时器的timer事件中。 变按钮的click事件为: thisform.timer1.enabled=.t. 停止按钮的click事件为:thisform.timer1.enabled=.f. 计时器单击事件: if thisform.label1.fontsize=100 thisform.label1.fontsize=10 e
11、lse thisform.label1.fontsize=thisform.label1.fontsize+5 endif,例4标签缩放结束.,2020/10/10,22,例5:文字变化 讲述内容:列表框 组合框 复选框 选项按钮组 设计结果如下:,2020/10/10,23,1.列表框(list) 主要用来显示选择项,用户可以从中选择一个或多个数据项。 主要属性: Rowsource Rowsourcetype 当rowsourcetype 设置值为1,值源类型为值 Rowsource写出具体值,之间逗号相隔. 当rowsourcetype 设置值为6,值源类型为字段,rowsource选择
12、所需字段.,2020/10/10,24,步骤1新建表单,画出列表框(list1), 并设置如下属性: Rowsourcetype 1 值 Rowsource 黑体,宋体,华文行楷,隶书 (注意逗号),运行结果如右图:,2020/10/10,25,2.组合框 组合框用于在列表框中选取数据并显示在编辑窗口,它有两种形式:下拉列表框,下拉组合框。 主要属性: style rowsource rowsourcetype listindex stype 为0时表示下拉组合框, 为2时表示下拉列表框。 下拉组合框可手写,下拉列表框只能选择。 rowsourcetype 和 rowsource同列表框 Li
13、stindex 指定索引值。,2020/10/10,26,步骤2 画出组合框,并设置如下属性: stype 0 Rowsourcetype 1 值 Rowsource 红,黄,绿,黑 (注意逗号) 输入form1的init事件代码(即初始化事件)为: bo1.listindex=1,运行结果如右图: 注意stype属性。,2020/10/10,27,3.复选框 可以通过单击改变它的状态。 复选框的主要属性是: caption value controlsource Caption 显示在复选框边上的文本 当value值为0时,表示没有选择复选框, 当value值为1时,表示选中了复选框, 当v
14、alue值为2时,复选框显示灰色。,2020/10/10,28,步骤3 画出3个复选框, 并分别设置 Check1的caption属性为:下划线 Check2的caption属性为:倾斜 Check3的caption属性为:加粗,运行结果如下:,2020/10/10,29,4.选项按钮组(optiongroup) 它可以包含多个选项,通常用于从多项选择中选择其一。 主要属性: buttoncount 指定按钮个数 value 选择第几个按钮 按钮组中按钮(option)的主要属性: caption 显示在按钮边上的文本,2020/10/10,30,步骤4 画出1个选项按钮组, 设置按钮个数为:
15、4个 option1的caption属性为:10 option2的caption属性为:20 option3的caption属性为:30 option3的caption属性为:40,注意:选项按钮组为容器类控件,右键-编辑去设置按钮的具体属性。,2020/10/10,31,步骤5设置form1的属性如下: caption 文化变化 autocenter .t. 步骤6表单上画一标签,并设置如下属性: caption 文字变化 autosize .t. fontsize 24,最后设计界面 如右图:,2020/10/10,32,步骤7 编写列表框(list1)的单击事件(click)代码:,do
16、 case case this.value=黑体 thisform.label1.fontname=黑体 case this.value=宋体 thisform.label1.fontname=宋体 case this.value=华文行楷 thisform.label1.fontname=华文行楷 case this.value=隶书 thisform.label1.fontname=隶书 endcase,注意代码别写错地方了!,2020/10/10,33,步骤8 编写组合框(combo1)的click事件代码:,do case case this.value=红 thisform.labe
17、l1.forecolor=rgb(255,0,0) case this.value=黄 thisform.label1.forecolor=rgb(255,255,0) case this.value=绿 thisform.label1.forecolor=rgb(0,255,0) case this.value=黑 thisform.label1.forecolor=rgb(0,0,0) endcase,2020/10/10,34,步骤9 编写复选框(check1)的click事件代码:,IF THIS.VALUE=1 THISFORM.LABEL1.FONTBOLD=.T. ELSE TH
18、ISFORM.LABEL1.FONTBOLD=.F. ENDIF,复选框2和3提示: 倾斜: fontitalic 加粗: fontbold,2020/10/10,35,步骤10 编写复选框(check1)的click事件代码:,do case case this.value=1 thisform.label1.fontsize=10 case this.value=2 thisform.label1.fontsize=20 case this.value=3 thisform.label1.fontsize=30 case this.value=4 thisform.label1.fonts
19、ize=40 endcase,文字变化例题结束,共10步骤!,2020/10/10,36,课堂练习: 文件名为My_form11, 有一组合框, rowsourcetype=1 rowsource=农电,农发 ,植保 有一文本框。 功能:当在组合框中选定一专业后,立刻在文本框中显示此专业全称,农电为“农业电气与自动化”,农发为“农村区域发展”,植保为“植物保护”。,2020/10/10,37,微调控件,可在微调控件框中输入一个值,或通过按钮选择一个值,其作用是确保数据的使用范围。一般情况下,它主要用于数值型数据的输入。,属性主要包括: Keyboardhighvalue 输入的最大值。 Key
20、boardlowvalue 输入的最小值。 Increment 每次单击按钮的增减值。 Value 初始值。 Spinnerhighvalue 单击按钮所能达到的最大值 Spinnerlowvalue 单击按钮所能达到的最小值,2020/10/10,38,例6加减乘除计算 设计一个名为 my_forma的表单如图所示:,表单上有一个标签: name为la,红色,20号字,autosize为.t. 两个微调控件:name分别为s1,s2;最小值为1,最大值为100,增减量为1,初始值为10。 一个单选按钮组: 4个按钮:Caption分别为加,减,乘,除。,2020/10/10,39,提示:代码
21、写到单选按钮组的interactivechange事件或click事件中。 代码提示: thisform.la.caption=str(thisform.s1.value+thisform.s2.value),功能:la上显示s1和s2的加或减或乘或除的值。,2020/10/10,40,例7累加及阶层计算 设计一个名为 my_formb的表单如图所示:,1个文本框名字为txt1 2个微调名字分别为sp1,sp2,sp1最大值为50,最小值为1,sp2最大值为90,最小值为51,增加或减少量为2 2个复选框名字分别为chk1,chk2;初值value=0,2020/10/10,41,表单功能为:
22、用微调选择数值进行运算,单击求阶层,求出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事件中。,2020/10/10,42,求阶乘 p=1 for i=thisform.sp1.value to thisform.sp2.value p=p*i endfor thisform.txt1.value=p,求累加和 s=0 for i=thisform.sp1.value to thisform.sp2.value s=s+i Endfor thisform.txt1.value=p,代码提示:,2020/10/10,43,例8查阅学生成绩情况 所学控件:表格 设计步骤如下: (1)新建表单,画一个标签控件,显示文字: 学生成绩情况,并自设计字体、字号等。 (2)指向表单空白处,按右键,进入数据环境 填入学生、成绩、课程三个数据
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 个人职业规划与需求
- 2026年高职(数字印刷技术)数码打印工艺考核试题及答案
- 《短视频制作》电子教案 课题23-拍摄产品广告短视频
- 2026八年级道德与法治上册 社会化人格完善
- 2026道德与法治五年级拓展空间 全球气候变化
- 2026年社区儿童皮肤护理合同协议
- 2026年商业中心物业管理协议
- 小学五年级观后感摘抄
- 业务合作洽谈-食品批发合作共赢
- 市场竞争论战-城轨建设市场分析
- 《缺血性脑卒中动物模型评价技术规范第1部分:啮齿类动物》编制说明
- 2025-2026学年西宁市城东区数学四年级上学期期中质量跟踪监视试题含解析
- 2025年拼多多客服知识考核试题及答案
- 2025年陪诊师准入理论考核试题(附答案)
- 2025年环境法司法考试题及答案
- 2025年不动产登记代理人《不动产登记代理实务》考前必刷题库(含真题、重点440题)含答案解析
- 关于书法社团的章程范本
- 国家电网招聘之公共与行业知识题库参考答案
- 【MOOC】软件度量及应用-中南大学 中国大学慕课MOOC答案
- 33防高坠专项施工方案
- JGT163-2013钢筋机械连接用套筒
评论
0/150
提交评论