1、二级 VISUAL+FOXPRO-50 及答案解析(总分:100.00,做题时间:90 分钟)一、B基本操作题/B(总题数:1,分数:30.00)在考生文件夹下有一表单文件 formone.scx,其中包含一个文本框和一个命令按钮。打开该表单文件,然后在表单设计器环境下完成如下操作:(分数:30.00)(1).将文本框和命令按钮两个控件设置为顶边对齐。(分数:7.50)_(2).将文本框的默认值设置为 0。(分数:7.50)_(3).将表单的标题设置为“基本操作”,将命令按钮的标题设置为“确定”。(分数:7.50)_(4).设置文本框的 InteractiveChange 事件代码,使得当文本
2、框输入负数时,命令按钮为无效,即不能响应用户的操作。(分数:7.50)_二、B简单应用题/B(总题数:2,分数:40.00)1.扩展 Visual FoxPro 基类 Form,创建一个名为 MyForm 的自定义表单类。自定义表单类保存在名为myclasslib 的类库中。自定义表单类 MyForm 需满足以下要求: (1)其 AutoCenter 属性的默认值为.T.。 (2)其 Closable 属性的默认值为.F.。 (3)当基于该自定义表单类创建表单时,自动包含一个命令按钮。该命令按钮的标题为“关闭”,当单击该命令按钮时,将关闭其所在的表单。(分数:20.00)_2.利用查询设计器创
3、建查询,从 orders、orderitems 和 goods 表中查询 2007 年签订的所有订单的信息。查询结果依次包含订单号、客户号、签订日期、总金额四项内容,其中总金额为该订单所签所有商品的金额(单价*数量)之和。各记录按总金额降序排序,总金额相同按订单号升序排序。查询去向为表tableone。最后将查询保存在 queryone.qpr 文件中,并运行该查询。(分数:20.00)_三、B综合应用题/B(总题数:1,分数:30.00)3.在考生文件夹下创建一个下拉式菜单 mymenu.mnx,并生成菜单程序 mymenu.mpr。运行该菜单程序时会在当前 vfp 系统菜单的末尾追加一个“
4、考试”子菜单,如下图所示。 (分数:30.00)_二级 VISUAL+FOXPRO-50 答案解析(总分:100.00,做题时间:90 分钟)一、B基本操作题/B(总题数:1,分数:30.00)在考生文件夹下有一表单文件 formone.scx,其中包含一个文本框和一个命令按钮。打开该表单文件,然后在表单设计器环境下完成如下操作:(分数:30.00)(1).将文本框和命令按钮两个控件设置为顶边对齐。(分数:7.50)_正确答案:(操作步骤 通过常用工具栏中的“打开”按钮打开考生文件夹下的表单 formone,选中文本框和命令按钮,选择“格式”菜单下“对齐”子菜单中的“顶边对齐”命令。)解析:考
5、点 本大题主要考查的知识点是:表单的创建及表单控件的添加和属性修改,控件事件中修改控件属性。 建立表单并添加控件,然后按要求修改各控件的属性;在文本框的 InteractiveChange 事件中首先要判断输入值是否小于 0,是则设置命令按钮的 Enable 属性为假。(2).将文本框的默认值设置为 0。(分数:7.50)_正确答案:(操作步骤 选中表单中的文本框控件,在属性窗口中修改其 Value 属性为 0。)解析:(3).将表单的标题设置为“基本操作”,将命令按钮的标题设置为“确定”。(分数:7.50)_正确答案:(操作步骤 将表单的 Caption 属性值设置为“基本操作”,命令按钮的
6、 Caption 属性值设置为“确定”。)解析:(4).设置文本框的 InteractiveChange 事件代码,使得当文本框输入负数时,命令按钮为无效,即不能响应用户的操作。(分数:7.50)_正确答案:(操作步骤 设置文本框的 InteractiveChange 事件代码: it thisform.Text1.value0 mand1.enabled=0 endif)解析:二、B简单应用题/B(总题数:2,分数:40.00)1.扩展 Visual FoxPro 基类 Form,创建一个名为 MyForm 的自定义表单类。自定义表单类保存在名为myclasslib 的类库中。自定义表单类
7、MyForm 需满足以下要求: (1)其 AutoCenter 属性的默认值为.T.。 (2)其 Closable 属性的默认值为.F.。 (3)当基于该自定义表单类创建表单时,自动包含一个命令按钮。该命令按钮的标题为“关闭”,当单击该命令按钮时,将关闭其所在的表单。(分数:20.00)_正确答案:(操作步骤 步骤 1:选择“文件”|“新建”命令,在弹出的“新建”对话框中选择“类”单选按钮,再单击“新建文件”按钮。 步骤 2:在弹出的“新建类”对话框中,在“类名”文本框中输入 MyForm,在“派生于”下拉列表中选择 Form,单击“存储于”文本框后的按钮,在打开的“另存为”对话框选择考生文件
8、夹,再输入文件名 myclasslib,单击“确定”按钮。 步骤 3:打开“类设计器”窗口,进入类设计器环境。在属性窗口中,将表单的 AutoCenter 属性设置为.T.,Closable 属性设置为.F.。在窗体上添加一命令按钮,其 Caption 属性为“关闭”,设置“关闭”按钮的 Click 事件代码:thisform release。)解析:考点 本大题主要考查的知识点是:自定义表单类的创建及其属性事件设置,利用查询设计器设计查询。 根据题目要求使用向导建立自定义类,在查询设计器中从相应表中选择所需字段进行设置建立题目所要求的查询。2.利用查询设计器创建查询,从 orders、ord
9、eritems 和 goods 表中查询 2007 年签订的所有订单的信息。查询结果依次包含订单号、客户号、签订日期、总金额四项内容,其中总金额为该订单所签所有商品的金额(单价*数量)之和。各记录按总金额降序排序,总金额相同按订单号升序排序。查询去向为表tableone。最后将查询保存在 queryone.qpr 文件中,并运行该查询。(分数:20.00)_正确答案:(操作步骤 步骤 1:通过“新建”对话框新建查询,并依次把 orders、orderitems 和 goods表添加到查询设计器中。 步骤 2:在“字段”选项卡中依次选择“orders.订单号”、“orders.客户号”、“ord
10、ers.签订日期”,在“函数和表达式”中输入“SUM(goods.单价* orderitems.数量)AS 总金额”,并添加到选定字段中。 步骤 3:切换到“筛选”选项卡,在表达式输入“year(orders.签订日期)”,“条件”选择“=”,“实例”中输入 2007。 步骤 4:切换到“排序依据”选项卡并在其中选择字段“SUM(goods.单价 * orderitems.数量)AS 总金额”,排序选项为“降序”,再选择“orders.订单号”,排序选项为“升序”。 步骤 5:切换到“分组依据”选项卡并在其中选择字段“orders.订单号”;单击“查询”菜单下的“查询去向”命令,选择表,在“表
11、名”文本框中输入 tableone。 步骤 6:保存查询为 queryone,并运行该查询。)解析:三、B综合应用题/B(总题数:1,分数:30.00)3.在考生文件夹下创建一个下拉式菜单 mymenu.mnx,并生成菜单程序 mymenu.mpr。运行该菜单程序时会在当前 vfp 系统菜单的末尾追加一个“考试”子菜单,如下图所示。 (分数:30.00)_正确答案:(操作步骤 步骤 1:新建一个菜单,在“菜单名称”中输入“考试”,在“结果”中选择“子菜单”,单击“创建”按钮。在子菜单中分别输入“统计”和“返回”。 步骤 2:选择“统计”的结果为“过程”。在过程中输入下列命令: SELECT C
12、ustomers.姓名 AS 客户名,count(Orders.订单号)as 订单数; FROM customers INNER JOIN Orders ON Customers.客户号=Orders.客户号; WHERE year(Orders.签订日期)=2007 GROUP BY Customers.姓名; ORDER BY 2 DESC, Customers.姓名 INTO TABLE tabletwo 步骤 3:选择“返回”的结果为过程,在过程中输入命令:SET SYSMENU TO DEFAULT。 步骤 4:在“显示”菜单中选择“常规选项”命令,在打开的“常规选项”对话框中选择“追加”选项。 步骤 3:保存菜单 mymenu.mnx,并生成菜单程序 mymenu.mpr,且运行菜单程序并依次执行“统计”和“返回”菜单命令。)解析:考点 本大题主要考查的知识点是:建立菜单插入到系统菜单中、SQL 语句的排序和查询去向、Count 函数的使用。 对于本题,需要在“常规选项”对话框中选择“追加”,表示在系统菜单的末尾增加指定的菜单项。返回 Visual FoxPro 的系统菜单的命令格式为“SET SYSMENU TODEFAULT”,考生需要牢记。