1、实验9 表单设计9.1 实验目的1. 熟练掌握用表单设计器创建和使用表单。2. 熟练掌握表单常用控件的创建和使用。9.2 实验内容1. 设计一个如图1.25所示的电话通话计费表单(文件名:通话计费.SCX)。假设电话每分钟通话费为0.30元。提示:使用TIME()(以时:分:秒格式返回系统当前时间)和SECONDS()函数(以秒为单位,返回自午夜以来经过的时间),在点击“通话开始”和“通话结束”命令按钮后,分别记录开始通话和结束通话的时间,将两次调用TIME()的结果显示在前面两个文本框中,将两次调用SECONDS()取得的值之差经四舍五入处理后作为通话时间显示在第三个文本框中。最后计算出通话
2、费用显示在第四个文本框中。点击“重新计费”按钮,将四个文本框的值清空。注意,因为在通话结束时的计费中要用到通话开始时产生的时间(处于不同的事件中),所以在表单的INIT事件中要设使用的变量为全局变量,同时也要将四个文本框的值清空。图1.25 电话计费表单界面2. 设计一个如图1.26所示的学生单科成绩查询表单(文件名:单科成绩查询.SCX)。提示:本表单涉及到学生登记表、课程登记表和学生成绩表(见表1-8、1-10、1-11),在表单的数据环境中要加入三个表。标签“学生姓名”对应的组合框的数据源类型是“字段”,数据源是学生登记表的“姓名”;标签“已选修课程”对应的列表框的数据源类型是“SQL语
3、句”,数据源是根据学生姓名用SQL查询出的“课程名称”;标签“成绩”对应的文本框的数据源是一个根据姓名和课程名称的基于SQL的“成绩查询”。本表单的两个主要事件是:Combo1.Interactionchange(组合框的内容发生变化)和List1.Interactionchange(列表框内容发生变化)。图1.26 学生单科成绩查询表单界面3. 设计一个如图1.27所示的数据表选项浏览表单(文件名:数据表选项浏览.SCX)。提示:本表单涉及到学生登记表(见表1-8)、教师表(见表1-12)。当选定学生表时,教师表的各选项不能用;当选定教师表时,学生表的各选项不能用。点击“查询”按钮时,根据选
4、择的表,打开相应的数据表,然后判断用户的选项,添加到一个字符串变量中,作为Browse浏览命令的选项。 图1.27 数据表选项浏览表单界面4. 设计一个如图1.28所示的成绩条件查询表单(文件名:成绩条件查询.SCX)。提示:本表单涉及到学生登记表、课程登记表和学生成绩表(见表1-8、1-10、1-11),其中标签“课程名称”对应的组合框数据源类型是“字段”,数据源是课程登记表的“课程名称”;标签“比较符”对应的组合框数据源类型是“值”,数据源是“,=,=,=”;标签“分数”对应的是文本框,在运行时直接输入分数。表格在表单初始化时设置THISFORM . GRID1 . COLUMNCOUNT
5、=-1,使表格不显示内容。当点击“查询”按钮时,首先检查课程名称、比较符和分数是否已选择或输入了值,如果没有要给出提示,表格中的内容是根据所给出的查询条件在三表中查询的结果。图1.28 成绩条件查询表单界面Select 学号,姓名,成绩 form 选课,课程,学生 where 选课.学号=课程.学号and .5. 设计一个如图1.29图1.32所示的测试表单(要求只测试单选题。文件名:测试.SCX)。该表单涉及到数据表:试题库.DBF(编号C4,题目M,标准答案C1,输入答案C1),其内容自行输入。提示:本表单数据来源是试题库. DBF。表单中的TEXT1用于显示试题的编号;EDIT1用于显示
6、题库的内容;TEXT2在测试过程中用于显示该题的用户已选的答案,当测试结束时,用于显示测试的最后得分;同样LABEL3在表单运行开始时,显示内容是“已选答案”,在测试结束时,显示内容是“最后得分”;选项按钮组供用户选择输入答案;命令按钮组用于选择题目,要求当在第一题和最后一题时要给予提示;“完成”按钮用于统计测试得分,并显示。操作过程见图1.29图1.32。 图1.29 测试表单界面(1) 图1.30 测试表单界面(2) 图1.31 测试表单界面(3) 图1.32 测试表单界面(4)6. 设计一个如图1.33图1.34所示的计时器使用表单(文件名:计时器的使用.SCX)。提示:计时器使用表单采
7、用表单集形式,第一个表单上的文字由小变大,好似由远到近(见图1.33);在暂停一段时间后,自动切换到第二个表单(见图1.34)。表单上字的变化和表单的切换分别使用了两个计时器控制。第一个计时器用于当计时器事件激活了一定次数后(如50次),隐藏第一个表单,同时显示第二个表单;当计时器事件激活了更多次数后(如:80次),则清除表单集,调用下一个表单(如下题的“系统登录”表单)。第二个计时器用于每激活一次计时器,使其字号加2(当表单集的表单1中的标签文字小于30号字)。 图1.33 “放射性放大字幕”表单图1.34 “学生管理系统”表单7. 设计一个如图1.35所示的关于系统表单(文件名:关于系统.SCX)。 提示:关于系统表单主要显示一些系统的开发说明。图1.35 “关于系统”表单8. 设计一个如图1.36所示的系统登录表单(文件名:系统登录.SCX)。 提示:要新建一个操作员数据表(见表1-17)。当文本框输入的内容不等于“操作员”数据表中相应密码字段的内容时,则弹出提示对话框;否则执行后续表单(如“关于系统”表单)。 图1.36 “系统登录”界面表1-17 操作员. dbf的结构和内容姓名口令操作员1AAAAAA操作员2BBBBBB操作员3CCCCCC