上机部分 1.基本操作题
9 }5 _2 a+ r7 u4 `& O2 f( B. G6 g1 H 在考生文件夹下,完成如下操作:0 f9 z1 t$ V, I6 C. j
(1)建立数据库ordersmanage.dbc,把自由表employee.dbf和orders.dbf添加到数据库中。
- q0 A, s) ?3 ]+ q4 g, t (2)打开表单dh.scx,设置标签控件中英文字母的字号为18,保存表单。; q1 A1 z9 n2 T# w4 i
(3)打开表单dh.scx,为命令按钮“隐藏”添加代码,使表单运行时,单击此按钮隐藏表单上标签控件label1;保存并运行该表单。
. h7 j) `3 O0 q (4)利用报表向导建立一对多报表,以employee表为父表,选择其中职工号、姓名和性别字段;以orders表为子表,选择其全部字段。报表样式为简报式,表之间的关联通过“职工号”字段实现,排序方式按职工号降序,报表标题为“职工订单”。报表其他参数取默认值。最后将生成的报表保存为empord.frx。9 |$ G; h: t5 [& h4 j
【参考答案】
5 {# x+ {6 ] k (1)具体步骤如下:
5 Q9 R2 |6 v5 A7 O: Q ① 从“文件”菜单中选择“打开”命令。在弹出的“打开”对话框中选择考生目录下的ordersmanage.dbc文件,单击“确定”按钮。
2 j7 \2 q% [7 A ② 系统打开“数据库设计器”窗口,在窗口中单击鼠标右键,在弹出的快捷菜单中选择“添加表”命令。& `7 I3 ?/ j1 h6 D3 w
③ 在弹出的“打开”对话框中选择employee.dbf文件。3 f) a# `7 U1 Z& M
④ 以同样的方法添加另一个表。
+ M, ^4 ~* H7 T% N (2)具体步骤如下:
% h. n8 d' E M7 k ① 从“文件”菜单中选择“打开”命令,在弹出的“打开”对话框中选择dh.scx,单击“确定”按钮。
( T& `. V. X& r/ j5 w ② 系统打开“表单设计器”,并显示dh.scx的内容。
$ b+ Y' J4 {, P2 ?5 w ③ 选中标签文字,在“属性”窗口中设置其FontSize属性为18$ z% f! N: a5 ?' B% H3 [, x
④ 保存表单。
# S8 Z6 Z* S" ^* `2 l (3)具体步骤如下:5 Q1 [9 ^' a7 {/ a9 `$ D
① 打开表单dh.scx。
2 g" Y: R9 v" y1 [& B6 @, T$ v3 t3 R% Z ② 选择“隐藏”按钮,在“属性”窗口中双击Click事件,在弹出的代码窗口中添加如下代码:- |' e7 w7 T- ~, Q6 H, O/ a8 n
thisform.label1.visible=.f.0 f# W3 W+ S7 j
③ 保存表单,并运行表单。( F3 W0 [1 [" u8 S
(4)具体步骤如下:# g0 w* n- b& v5 d) P3 c" a
① 从“文件”菜单中选择“新建”命令,在弹出的“新建”对话框中选中“报表”单选按钮,单击“向导”按钮。
/ p+ _6 j2 n- l. X3 g5 a ② 在弹出的“向导选取”对话框中选择“一对多报表向导”6 N# {' S* N# l2 J/ I
单击“确定”按钮。+ U( x! h, t" v2 D$ `
③ 在弹出的对话框中选择父表为employee,并选择其中的“职工号”、“姓名”、“性别”字段8 k7 s7 ~+ W" p. v4 W1 u
,单击“下一步”按钮。
. [: ?6 d2 X+ W9 {0 ] ④ 选择子表为orders,并选择所有字段,单击“下一步”按钮。
7 U4 q+ U' o$ H7 x" r3 H% Y0 T ⑤ 设置两个表之间通过“职工号”进行关联,单击“下一步”按钮。" a) u1 K' Q' {+ T9 ?0 E
⑥ 选择排序依据为“职工号”,并选中“降序”单选按钮,单击“下一步”按钮。: d5 v, h$ q2 Z7 x9 I; i7 \
⑦ 选择报表样式为“简报式”,单击“下一步”按钮。
9 ~* a8 f( E; H ⑧ 输入报表标题为“职工订单”,单击“完成”按钮,在弹出的“另存为”对话框中将报表保存为empord.frx。
: L4 z- g! r' P3 p! K% H R% T 2.简单应用题
7 {; a6 ?9 N+ Q0 Q" s% h 在考生文件夹下,完成如下简单应用:
1 g* }& [" |: z9 M. ~5 O (1)打开程序文件progerr.prg,按文件中给出的功能要求改正其中的错误,以文件名为prognew.prg重新保存该文件并运行程序。
+ _' T6 F) q3 O (2)表单文件名为myform.scx,控件名为myform,表单标题为“顶层表单”。9 P4 @8 J1 Q! C# p h* H. d
(3)为顶层表单建立菜单mymenu。
- G% v) o* Y+ Z, c 单击“退出”菜单时,关闭释放此顶层菜单,并返回到系统菜单(在过程中完成)。
/ U* b* |0 s0 C2 B* ?' @9 ~ 【参考答案】8 m' c. T: w- C. x: d7 o3 ~4 W
(1)具体步骤如下:
2 o+ d3 l! W' p/ O" n9 J5 Q ① 打开progerr.prg文件。
, P3 ~ X4 a E& J% _* I ② 将程序修改如下:$ g; U' E1 H2 ^+ F
OPEN DATABASE ordersmanage: C! f y- G& T. ?
CREATE view viewes AS SELECT职工号,SUM(金额)AS总金额FROM orders;
9 e; w/ m( Y& k- L6 i GROUP BY职工号) u) A5 R4 C" u6 v
SELECT * FROM viewes WHERE总金额>=30000 ORDER BY总金额DESC;, M Q2 p, f. ~8 n1 j$ x0 o
into dbf newtable8 p6 K( H: y2 r. {2 u1 }
③ 执行“文件”菜单中的“另存为”命令,将程序另存为prognew.prg。
3 b7 l# _7 E8 H6 O& o5 \* B6 b6 N+ j (2)具体步骤如下:
* @/ q0 Z6 ^8 X% n ① 从“文件”菜单中选择“新建”命令,在弹出的“新建”对话框中选中“菜单”单选按钮,单击“新建文件”按钮。
3 N1 L [7 I% \# Q4 i! x ② 弹出“新建菜单”对话框,单击“菜单”按钮,进入“菜单设计器”窗口。" d: J. E8 X; ?6 t5 M1 c* x! H
③ 在“菜单设计器”窗口中输入三个菜单名称“文件”、“编辑”、“退出”,并在“退出”菜单项的“结果”下拉列表中选择“过程”选项,单击“创建”按钮,在弹出的代码窗口中输入如下代码:
1 Z. }( y8 L, `9 s; h8 k! U myform.release+ ?4 R& L3 P( L9 P5 e
set sysmenu to default
, }) R4 J7 G4 z, ?/ V- h/ p ④ 执行“显示”菜单中的“常规选项”命令,在弹出的“常规选项”对话框中选中“顶层表单”复选框。7 p1 f/ H5 P2 g+ t' X
⑤ 单击“保存”按钮,将菜单保存为mymenu.mnx。6 s0 O; T% j, X3 J9 A
⑥ 执行“菜单”菜单中的“生成”命令,在弹出的对话框中单击“生成”按钮。
" @( W) a- ^+ ?4 \: |3 Z1 e ⑦ 关闭“菜单设计器”窗口。5 R' @3 {) g: q1 V- V
⑧ 从“文件”菜单中选择“新建”命令,在弹出的“新建”对话框选中“表单”单选按钮,单击“新建文件”按钮。, M( |; n& D& K8 k
⑨ 在打开的“表单设计器”窗口中更改表单的Caption属性为“顶层表单”。
& f7 i' x; e* B7 w$ y! t ⑩ 修改表单的ShowWindow属性为“2-作为顶层表单”。6 A! J! o% P, S: G1 A7 ]- Z+ E
给表单的Init事件添加如下代码:; [- G/ _; Y0 |% o
do mymenu.mpr with this,”mymenu”+ {# t. M9 d' u# } d+ M8 v
将表单保存为myform.scx,并运行表单。
@( ]3 R1 j) J# E 3.综合应用题# b5 p \$ y' C) F
在考生文件夹下,完成如下综合应用:/ b+ m* _/ l( R. g6 ^0 G3 j
打开表单文件sapp,并完成如下操作(不得有多余操作):3 _! \5 s0 P. w
(1)将“课程”表添加到表单的数据环境中;& O; }! w' x+ {3 a! x% ]" V" _
(2)使列表框List1中的数据项为“课程”表中的课程名称(课程.课程名);) K) Q' U! q8 k& f. d) q& K
(3)单击列表框中的数据项时,统计选修了所选课程的学生人数(从“考试成绩”表),并将结果存储在以课程名命名的表中,表中只有一个字段“人数”;2 O* \! V# Q+ s3 y; \5 B( V0 h4 V" D
(4)添加一个命令按钮Command1,单击该按钮时关闭表单。
# Y6 ?4 c6 J$ _+ ]- A- Z+ J4 U 【参考答案】2 b# ?3 y$ o+ h; s) M2 P$ @
① 打开表单文件sapp,单击鼠标右键,在弹出的快捷菜单中选择“数据环境”命令。: b; d& e7 F3 H+ l$ _& h4 H
② 在打开的“数据环境设计器”窗口中单击鼠标右键,在弹出的快捷菜单中选择“添加”命令。7 G+ e" L f, {6 j( ?( M; b h
③ 系统弹出“打开”对话框,选择“课程”表,单击“确定”按钮。
W C- S% O: A: F* r0 J; r5 y ④ 选择列表框List1,在“属性”窗口中设置RowSourceType属性为“6-字段”,设置RowSource属性为“课程.课程名”。
3 r, G* y2 c! G- f ⑤ 为列表框List1的Click事件添加如下代码:. [7 W* C: U2 X. L* _; Q
filename=this.value% ]/ _1 l+ |4 a+ q3 |8 b+ F; O
select count(考试成绩.学号)as 人数 from 课程inner join考试成绩;/ F; q- b# E! r
on 课程.课程编号=考试成绩.课程编号;
( f0 _* \& ^* w, O3 b" ^ where 课程.课程名=this.value into dbf &filename; L; J% K* b/ A
⑥ 在控件工具栏中选择命令按钮,在表单中的合适位置单击,添加一个Command1按钮,并为其Click事件添加如下代码:
% _8 |, k) ^2 Y5 Q; S2 | Thisform.release B" \& a6 R' m1 c5 H+ F
⑦ 将表单保存,并运行表单。 |