1、国家二级 VF机试(操作题)-试卷 213及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.(1)打开考生文件夹下的表单 one(如图 231 所示),编写“显示”命令按钮的 Click事件代码,使表单运行时单击该命令按钮的结果是在 Text1文本框中显示当前系统日期的年份(提示:通过设置文本框的Value属性实现,系统日期函数是 date,年份函数是 year)。 (2)打开考生文件夹下的表单 two(如图 2-32所示),选择“表单”菜单中的“新建方法程序”命令,在“新建方法程序”对话框中,为该表单新建一个方法 test,然后双击表单,选择该
2、方法编写代码,该方法的功能是使“测试”按钮变为不可用(提示:即将该按钮的 Enabled属性设置为f)。 (分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.(1)列出客户名为“三益贸易公司”的订购单明细(order detail)记录(将结果先按“订单号”升序排列,同一订单的再按“单价”降序排列),并将结果存储到 results表中(表结构与 order detail表结构相同)。(2)考生文件夹下有一个 form1表单文件,其中三个命令按钮 Click事件下的语句都是错误的,请按如下要求进行修改(最后保存所做的修改): 单击“刷新标题”命令按钮时,使表单的标题为“简单应用”
3、。单击“订单记录”命令按钮时,使表格控件中显示 order_list表中的记录。 单击“关闭表单”命令按钮时,关闭表单。 注意:每处错误只能在原语句上进行修改,不可以增加语句。(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下有 myform表单文件,将该表单设置为顶层表单,然后设计一个菜单,并将新建立的菜单应用于该表单(在表单的 load事件中运行菜单程序)。 新建立的菜单文件名为 mymenu,结构如下(表单、报表和退出是菜单栏中的 3个菜单项): 表单 浏览课程 浏览选课统计 报表 预览报表 退出 如图 23所示。各菜单项的功能如下: 选择“浏览课程”时在
4、表单的表格控件中显示“课程”表的内容(在过程中完成,直接指定表名)。 选择“浏览选课统计”时在表单的表格控件中显示简单应用题建立的视图sview的内容(在过程中完成,直接指定视图名)。 选择“预览报表”时预览简单应用题建立的报表creport(在命令中完成)。 选择“退出”时关闭和释放表单(在命令中完成)。 注意:最后要生成菜单程序,并注意该菜单将作为项层表单的菜单。 (分数:2.00)_国家二级 VF机试(操作题)-试卷 213答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.(1)打开考生文件夹下的表单 one(如图 231 所示),编写“显示
5、”命令按钮的 Click事件代码,使表单运行时单击该命令按钮的结果是在 Text1文本框中显示当前系统日期的年份(提示:通过设置文本框的Value属性实现,系统日期函数是 date,年份函数是 year)。 (2)打开考生文件夹下的表单 two(如图 2-32所示),选择“表单”菜单中的“新建方法程序”命令,在“新建方法程序”对话框中,为该表单新建一个方法 test,然后双击表单,选择该方法编写代码,该方法的功能是使“测试”按钮变为不可用(提示:即将该按钮的 Enabled属性设置为f)。 (分数:2.00)_正确答案:(正确答案:(1)在命令窗口执行命令: MODIFY FORM one ,
6、打开表单设计器修改表单。 双击“显示”命令按钮,编写按钮的 Click事件代码: THISFORMTEXT1VALUE=YEAR(DATE() 单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。 (2)在命令窗口执行命令: MODIFY FORM two ,打开表单设计器修改表单。 执行【表单】【新建方法程序】菜单命令,在弹出的“新建方法程序”对话框的“名称”文本框中输入“test”,单击“添加”按钮新增方法,然后关闭对话框。 在“属性”窗口中双击此方法,打开用户自定义过程代码框输入: THISFORMCOMMAND1ENABLED=F 单击“常用”工具栏中的“运行”按
7、钮查看结果,将表单文件保存到考生文件夹下。 (3)在命令窗口执行命令:USE 课程表,打开“课程”表。 在命令窗口执行命令: CREATE REPORT study_report ,打开报表设计器,然后执行【报表】【快速报表】菜单命令,在弹出的“快速报表”对话框中单击“确定”按钮新建快速报表,预览和保存报表设计。 (4)在命令窗口执行命令: ALTER TABLE 教师表 ALTER 职工号 SET CHECK LEFT(职工号,3)=“110“。)解析:解析:本大题考查了表单属性和方法的设置;快速报表的建立;SQL 定义功能。 通过文本框的Value属性可以指定文本框中显示的数据,本题要注意
8、所涉及的函数的使用,求年份的函数为 YEAR(),求当前系统日期的函数为 DATE()。 在 Visual FoxPro中,用户可以通过“新建方法程序”对话框定义新方法名;然后定义该方法的功能代码;方法建立完毕后,用户可以像调用表单中其他方法一样调用新建的方法,通过设置控件的 Enabled属性可以指定控件是否可用。 快速报表的建立需要在报表设计器中进行,在报表设计器中可以通过菜单命令启动建立快速报表的功能,建立快速报表前应先指定报表的数据源。 利用 SQL定义功能的表结构修改语句: ALTER TABLEALTER | ADDSET CHECK 可以设置表中指定字段的有效性规则。二、简单应用
9、题(总题数:1,分数:2.00)2.(1)列出客户名为“三益贸易公司”的订购单明细(order detail)记录(将结果先按“订单号”升序排列,同一订单的再按“单价”降序排列),并将结果存储到 results表中(表结构与 order detail表结构相同)。(2)考生文件夹下有一个 form1表单文件,其中三个命令按钮 Click事件下的语句都是错误的,请按如下要求进行修改(最后保存所做的修改): 单击“刷新标题”命令按钮时,使表单的标题为“简单应用”。单击“订单记录”命令按钮时,使表格控件中显示 order_list表中的记录。 单击“关闭表单”命令按钮时,关闭表单。 注意:每处错误只
10、能在原语句上进行修改,不可以增加语句。(分数:2.00)_正确答案:(正确答案:(1) 在命令窗口执行如下 SQL命令语句完成查询: SELECT Order_detal 上*; FROM 订货管理!order_detail INNER JOIN 订货管理! order_list; INNER JOIN 订货管理!customer; ON Order_list客户号=customer客户号; ON Order_detail订单号 =Order_list订单号; WHERE customer客户名=“三益贸易公司“; ORDER BY Order_detail订单号,Order_detail单价
11、 DESC; INT() TABLE resultsdhf (注意:以上 SQL语句是根据查询文件完成的,大家也可以通过查询设计器完成本题操作。) (2) 步骤 1:在命令窗口执行命令: MODIFY FORM form1 ,打开表单设计器修改表单。 步骤 2:双击表单中的“刷新标题”按钮,看到该按钮的 Click事件中代码如下: THISFORM=“简单应用“ 修改后的代码如下: THISFORMCAPTION=“简单应用“ 步骤 3:双击表单中的“订单记录”按钮,看到该 按钮的 Click事件中代码如下: THISFORMGRID1=“ORDER_LISTDBF“ 修改后的代码如下: TH
12、ISFORMGRID1RECORDSOURCE=“ORDER_LISTDBF“ 步骤 4:双击表单中的“关闭表单”按钮,看到该按钮的 Click事件中代码如下: THISFORMCLOSE 修改后的代码如下: THISFORMRELEASE 步骤 5:单击“常用”工具栏中的“运行”按钮查看结果,将表单文件保存到考生文件夹下。)解析:解析:(1)本题主要考查了 SQL的联接查询。本题的关键是判断查询用到了哪些表以及如何设置查询条件。根据题意,该查询用到了 order_detail、order_list 和 customer三张表,查询条件可以根据表中的关联字段得出。 另外,注意排序依据的设置,本
13、题为双重排序,要将第一排序次序放前面。 (2)本题主要考查了表单及控件常用属性和方法的设置。表单的标题属性为 Caption。释放和关闭表单的方法是Release。三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下有 myform表单文件,将该表单设置为顶层表单,然后设计一个菜单,并将新建立的菜单应用于该表单(在表单的 load事件中运行菜单程序)。 新建立的菜单文件名为 mymenu,结构如下(表单、报表和退出是菜单栏中的 3个菜单项): 表单 浏览课程 浏览选课统计 报表 预览报表 退出 如图 23所示。各菜单项的功能如下: 选择“浏览课程”时在表单的表格控件中显示“课程”表的
14、内容(在过程中完成,直接指定表名)。 选择“浏览选课统计”时在表单的表格控件中显示简单应用题建立的视图sview的内容(在过程中完成,直接指定视图名)。 选择“预览报表”时预览简单应用题建立的报表creport(在命令中完成)。 选择“退出”时关闭和释放表单(在命令中完成)。 注意:最后要生成菜单程序,并注意该菜单将作为项层表单的菜单。 (分数:2.00)_正确答案:(正确答案:步骤 1:在命令窗口执行命令: CREATE MENU mymenu ,在弹出的“新建菜单”对话框中单击“菜单”图标按钮,打开菜单设计器。在菜单设计器“菜单名称”列的文本框中依次输入“表单”、“报表”和“退出”3 个主
15、菜单名,“结果”下拉框中选择为“子菜单”,单击“表单”行的“创建”按钮进入下级菜单设计。 步骤 2:在“菜单名称”列依次输入子菜单名“浏览课程”和“浏览选课统计”,选择“结果”列都为“过程”,分别单击两个“过程”后面的“创建”按钮打开过程编辑器,编写过程代码。 “课程浏览”菜单命令的过程代码: MyformGrid1RecordS0urceType=1 My formGrid1RecordSource=“课程“ “选课统计浏览”菜单命令的过程代码: OPEN DATABASE 学生管理 MyformGrid1RecordSourceType=0 MyformGrid1RecordRource=
16、“sview“ 步骤 3:通过“菜单级”下拉框返回主菜单项设计界面,以同样的方法,设计“报表”菜单项的下级子菜单“预览报表”,注意选择“预览报表”的“结果”项为“命令”,然后在后面的文本框中输入以下命令代码: REPORT FORM creport PREVIEW 步骤 4:再次返回主菜单项设计界面,选择“退出”菜单命令的“结果”项为“命令”,并输入命令语句: myform RELEASE 步骤 5:执行【显示】【常规选项】菜单命令,在弹出的“常规选项”对话框中勾选“顶层表单”复选框,然后单击“确定”按钮,保存修改。如图 317 所示。 )解析:解析:本题主要考查的是菜单在顶层表单中的应用。主
17、要包括两大部分的操作,即菜单设计和表单设计。操作过程可按以下步骤进行: 通过菜单设计器建立菜单,注意主菜单和子菜单的建立。菜单设计有两个关键操作:一是在菜单设计器中勾选“常规选项”对话框中的“顶层表单”,表示此菜单存在顶层表单中;二是在释放表单时,要使用表单的文件名,即本题可以通过 MAINFORMRELEASE 命令释放MAINFORM表单,注意:不要使用 THISFORMRELEAsE 命令释放表单。 在表单设计过程中,要注意将表单设置为顶层表单,通过表单的 ShowWindow属性值可以进行设置,而在表单中调用菜单文件是在表单的Load(或 INIT)事件中进行调用,还需要通过 THIS短语指定当前表单对象的引用。其基本格式为:DOWITH THIS,“。