问答题 基于数据库pdtmng建立如图3.7所示顶层表单应用,表单文件名为myform.scx,表单控件名为goods,表单标题为“商品”。①表单内含一表格控件Gridl(默认控件名),当表单运行时,该控件将按用户的选择(单击菜单)来显示products.dbf中某一类商品数据,RecordSourceType的属性为“4一SQL说明”。②建立菜单(菜单文件名为mymenu.mnx),其条形菜单的菜单项为“商品分类”和“退出”,“商品分类”的下拉菜单为“小家电”、“饮料”和“酒类”;单击下拉菜单中任何一个菜单命令后,表格控件均会显示该类商品。③在表单的Load事件中执行菜单程序mymenu.mpr,④菜单项“退出”的功能是关闭表单并返回到系统菜单(在过程中完成)。
【正确答案】正确答案:【操作步骤】 步骤1:在命令窗口执行命令: CREATE FORM myform, 打开表单设计器新建表单。从“表单控件”工具栏中向表单添加一个表格控件。 步骤2:在“属性”面板的下拉框中选择表单对象,在“全部”选项卡中修改对象属性值;表单及控件属性设置见表4.11。 步骤3:在命令窗口执行命令: CREATE MENU mymenu, 在弹出的“新建菜单”对话框中单击“菜单”图标按钮,打开菜单设计器。 步骤4:在菜单设计器“菜单名称”列的文本框中依次输入“商品分类”和“退出”两个主菜单名,“商品分类”菜单命令的“结果”下拉框中选择为“子菜单”,单击“创建’’按钮进入下级菜单设计,在“菜单名称”列的第1、2、3行文本框中依次输入子菜单名“小家电”、“饮料”和“酒类”,将3个子菜单的“结果”都设置为“过程”,分别单击3个过程后面的“创建”按钮打开过程编辑器,编写过程代码。 步骤5:三个过程代码如下:“小家电”菜单命令的过程代码: myform:Gridl:RecordSource=“SELECT products.* FROM products,cateqory WHERE cateqory.分类编码 =roducts.分类编码.AND分类名称=-小家电-INTO CURSOR 1sb”。 “饮料”菜单命令的过程代码: myform:Gridl:RecordSource=“SELECT products.*FROM products,cateqory WHERE cateqory.分类编码=products.分类编码AND分类名称=,饮料INTOCUESOR lsb。 “酒类”菜单命令的过程代码: myform:Gridl:RecordSource=“SELECT products*.FROM products,category,WHERE category分类编码=products.分类编码AND分类名称=‘酒类’INTOCURSOR lsb”。 步骤6:通过“菜单级”下拉框返回主菜单项设计界面,设置“退出”菜单项的“结果”列为“过程”,并通过单击“创建”按钮打开一个窗口来添加“退出”菜单项要执行的命令: myform:release。 步骤7:执行【显示】→【常规选项】菜单命令,在弹出的“常规选项”对话框中勾选“顶层表单”复选框,然后单击“确定”按钮,保存修改。如图4-27所示。
【答案解析】