Skip Navigation Links.
Collapse 电工与电子技术 代码阅读实践
Collapse 电工与电子技术 计算机文化基础
Collapse 电工与电子技术 Visual Foxpro数据库应用技术
Expand 实验室简介 实验课程简介
Expand 实验室简介 实验室简介
Expand 实验室简介 实验大纲
Expand 实验室简介 实验内容
Expand 实验室简介 实验课件
Expand 实验室简介 实验视频
Expand 实验室简介 常见问题及解答
Expand 实验室简介 在线测试
Expand 实验室简介 等级考试题集
Expand 实验室简介 相关知识点
Expand 实验室简介 学习推荐
Collapse 电工与电子技术 数字图像处理
Collapse 电工与电子技术 数据结构和VC编程
Collapse 电工与电子技术 数据库
Collapse 电工与电子技术 多媒体技术应用
Collapse 电工与电子技术 汇编语言程序设计
Collapse 电工与电子技术 VB程序设计
Expand 实验室简介 课程简介
Expand 实验室简介 实验室简介
Expand 实验室简介 理论教学
Expand 实验室简介 实验教学
Expand 实验室简介 创新型实验
Expand 实验室简介 教学视频
Expand 实验室简介 课程习题
Expand 实验室简介 在线测试
Expand 实验室简介 VB等级考试
Expand 实验室简介 软件下载
Expand 实验室简介 2012年秋“VB程序设计”考试题目
Collapse 电工与电子技术 计算机维护维修
首页 >   主页 > 课程 > 计算机类 > Visual Foxpro数据库应用技术 > 实验内容 > 基础实验9 菜单设计
基础实验9 菜单设计 
 


学时安排:
理论教学2学时,实验教学1学时。

 

实验目的:
1. 掌握创建菜单的常用方法和步骤。
2. 掌握菜单设计器的使用,理解为菜单项设置快捷键的方法。
3. 掌握用程序编制菜单的方法。

 

实验要求:
1. 每人一机,独立完成实验。
2. 每次实验完成将结果存入自己的U盘,或上传至信息中心个人网络U盘中保存。

 

实验设备:
硬件配置:计算机实验教学示范中心机房计算机。
软件配置:Windows操作系统,Visual Foxpro6.0系统。

 

实验内容及步骤:
1. 创建菜单
设计一个如下所示的菜单系统:
基本信息管理(J) 成绩信息管理(C) 报表打印(P) 帮助(H)
输入新生名单(M) 学生成绩输入(S) (正在建设中) (正在建设中)
输入学生评语(P) 学生成绩统计(I)
学生成绩查询(C) F2
学生信息查询(F)
毕业生信息归档(G)
另外,在菜单运行时,用户选择各子菜单项均显示“此菜单项正在建设中”。
(1)打开“菜单设计器”
(2)创建菜单栏
(3)定义“基本信息管理”子菜单
(4)定义“成绩信息管理”子菜单
(5)保存菜单文件
(6)生成菜单程序
(7)运行菜单程序

 

2、创建快速菜单
利用FFP系统菜单,创建一个快捷菜单文件KJCD.mpr,该菜单中包含如下菜单项:
撤消、重做、———全选、复制、剪切、粘贴、清除、———查找、替换。
其中:“———”表示菜单分隔线。
在命令窗口输入VFP命令运行该菜单。

 

3、利用程序编制菜单
(1)建立光带菜单的步骤:
①定义菜单的名称及其属性
DEFINE MENU <menu name>
[BAR [AT LINE <expN1>]]
② 定义各选项的名称
DEFINE PAD <pad name> OF <menu name> PROMPT
<expC1>[AT <row, column>]
③ 设定菜单各选项的执行流向
ON SELECTION MENU <menu name> | ALL [<command>]
ON SELECTION PAD <pad name> OF <menu name> [<command>]
④ 激活菜单
ACTIVATE MENU <menu name> [NOWAIT] [PAD <pad name>]
* 光带式菜单范例
SET TALK OFF
CLEAR
* 定义光带式菜单 menu1
DEFINE MENU menu1 BAR AT LINE 2 COLOR SCHEME 1
* 定义菜单各项内容
DEFINE PAD kja OF menu1 PROMPT "\<1.系统初始化" ;
MESSAGE "本系统第一次使用时,使用本功能"
DEFINE PAD kjb OF menu1 PROMPT "\<2.凭证处理" ;
MESSAGE "输入凭证,修改凭证,删除凭证,打印凭证"
DEFINE PAD kjc OF menu1 PROMPT "\<3.汇总记帐" ;
MESSAGE "汇总各类凭证,记各种帐页"
DEFINE PAD kjd OF menu1 PROMPT "\<4.打印帐页" ;
MESSAGE "打印各种明细帐"
DEFINE PAD kje OF menu1 PROMPT "\<5.打印报表" ;
MESSAGE "打印各种财务报表"
DEFINE PAD kjf OF menu1 PROMPT "\<6.查 找" ;
MESSAGE "按各种条件查找凭证,明细帐"
DEFINE PAD kjg OF menu1 PROMPT "\<7.月底过帐" ;
MESSAGE "月底结各种余额,为下月财务管理做准备"
DEFINE PAD kjz OF menu1 PROMPT "\<0.退 回" ;
MESSAGE "你可以退出本程序"
ON SELECTION MENU menu1 DO subroute WITH PAD()
ACTIVATE MENU menu1 && 激活菜单 menu1
RETURN
PROCEDURE subroute
PARAMETERS mpad
IF mpad="KJZ"
CLEAR
DEACTIVATE MENU menu1
RELEASE MENUS menu1
ELSE
DO &MPAD
ENDIF
RETURN


(2)建立弹出式菜单的步骤:
① 定义菜单的名称及其属性
DEFINE POPUP <popup name>
[FROM <row1, column1>][TO <row2, column2>]
② 定义各选项的名称、内容和其它属性
DEFINE BAR <expN1>| <system option name>
OF <popup name> PROMPT <expC1>
③设定菜单各选项的执行流向
ON SELECTION POPUP <popup name> | ALL [<command>]
ON SELECTION BAR <expN> OF <popup name> [<command>]
④ 激活菜单
ACTIVATE POPUP <popup name> [AT <row,column>]
[BAR <expN>] [NOWAIT] [REST]
*弹出式菜单范例
SET TALK OFF
SET MESSAGE TO 24 CENTER
CLEAR
* 定义一个弹出式菜单: mypop
DEFINE POPUP mypop FROM 4,30 TITLE " 数据库管理系统 " MARGIN;
SCROLL SHADOW COLOR SCHEME 9
* 定义弹出式菜单 mypop 的各子项内容
DEFINE BAR 1 OF mypop PROMPT "\<1. 增加记录 " MESSAGE "向数据库中增加记录"
DEFINE BAR 2 OF mypop PROMPT "\<2. 删除记录 " MESSAGE "删除数据库中不需要的记录"
DEFINE BAR 3 OF mypop PROMPT "\<3. 修改记录 " MESSAGE "修改数据库中的记录"
DEFINE BAR 4 OF mypop PROMPT "\<4. 浏览记录 " MESSAGE "浏览数据库中的记录"
DEFINE BAR 5 OF mypop PROMPT "\-"
DEFINE BAR 6 OF mypop PROMPT "\<5. 固定检索 " MESSAGE "按固定方式检索数据库"
DEFINE BAR 7 OF mypop PROMPT "\<6. 条件检索 " MESSAGE "按条件方式检索数据库"
DEFINE BAR 8 OF mypop PROMPT "\-"
DEFINE BAR 9 OF mypop PROMPT "\<7. 数据库排序 " KEY CTRL+E ,'^E';
MESSAGE "数据库按指定条件排序"
* 用KEY参数指定按键组合 CTRL+E, 以直接执行此选项.
DEFINE BAR 10 OF mypop PROMPT "\<8. 数据库备份 " MESSAGE "数据库文件作备份"
DEFINE BAR 11 OF mypop PROMPT "\-"
DEFINE BAR 12 OF mypop PROMPT "\<9. 退回 " MESSAGE "退出此菜单, 返回调用程序"
* 设定菜单各子项被选择后执行的程序
ON SELECTION BAR 1 OF mypop DO subroute1 WITH POPUP(),PROMPT()
ON SELECTION BAR 2 OF mypop DO subroute2 WITH POPUP(),PROMPT()
ON SELECTION BAR 3 OF mypop DO subroute3 WITH POPUP(),PROMPT()
ON SELECTION BAR 4 OF mypop DO subroute4 WITH POPUP(),PROMPT()
ON SELECTION BAR 6 OF mypop DO subroute5 WITH POPUP(),PROMPT()
ON SELECTION BAR 7 OF mypop DO subroute6 WITH POPUP(),PROMPT()
ON SELECTION BAR 9 OF mypop DO subroute7 WITH POPUP(),PROMPT()
ON SELECTION BAR 10 OF mypop DO subroute8 WITH POPUP(),PROMPT()
ON SELECTION BAR 12 OF mypop DO subroute9
* 激活弹出式菜单:mypop
ACTIVATE POPUP mypop
RETURN
PROCEDURE subroute1
PARAMETERS mPOPUP,mPROMPT1
=SHOW(mPROMPT1)
RETURN
PROCEDURE subroute2
PARAMETERS mPOPUP,mPROMPT1
=SHOW(mPROMPT1)
RETURN
PROCEDURE subroute3
PARAMETERS mPOPUP,mPROMPT1
=SHOW(mPROMPT1)
RETURN
PROCEDURE subroute4
PARAMETERS mPOPUP,mPROMPT1
=SHOW(mPROMPT1)
RETURN
PROCEDURE subroute5
PARAMETERS mPOPUP,mPROMPT1
=SHOW(mPROMPT1)
RETURN
PROCEDURE subroute6
PARAMETERS mPOPUP,mPROMPT1
=SHOW(mPROMPT1)
RETURN
PROCEDURE subroute7
PARAMETERS mPOPUP,mPROMPT1
=SHOW(mPROMPT1)
RETURN
PROCEDURE subroute8
PARAMETERS mPOPUP,mPROMPT1
=SHOW(mPROMPT1)
RETU
PROCEDURE subroute9
DEACTIVATE POPUP mypop
RELEASE POPUPS mypop
RETURU
FUNCTION show
PARAMETERS mPROMPT2
SET CURSOR OFF
WAIT " 你选择的是弹出式菜单 "+mPOPUP+" 中的 "+mPROMPT2 WINDOWS
SET CURSOR ON
RETURN