《软件案例分析》实验指导书.docx
- 文档编号:29224494
- 上传时间:2023-07-21
- 格式:DOCX
- 页数:11
- 大小:145.92KB
《软件案例分析》实验指导书.docx
《《软件案例分析》实验指导书.docx》由会员分享,可在线阅读,更多相关《《软件案例分析》实验指导书.docx(11页珍藏版)》请在冰豆网上搜索。
《软件案例分析》实验指导书
《软件案例分析》实验指导书
实验1PB环境学习1
实验2数字钟表制作4
实验3模拟钟表制作5
实验4快捷键设置6
实验9三层结构录入界面7
实验项目
为了配合实验项目,先建立一个应用soft_case、一个菜单m_soft_case、一个主窗口w_softcase和一个被多个实验继承的祖先窗口w_showhide。
当窗口w_showhide打开时,主窗口w_softcase被隐藏,否则主窗口显示。
实验环境为:
Windows98或Windows2000操作系统、PB开发环境和Oracle数据库管理系统。
实验1PB环境学习
1.建立应用
(1)建立1个应用,命名为soft_case。
(2)新建1个菜单,命名为m_soft_case,菜单结构如图A.1所示。
图A.1主菜单结构
(3)“退出”菜单的clicked事件程序代码如下:
NO.A.1
CLOSE(PARENTWINDOW)
(4)“数字钟表”菜单的clicked事件程序代码如下:
NO.A.2
OpenWithParm(w_showhide_clock,mf_itemtext(THIS.text))
(5)“模拟钟表”菜单的clicked事件程序代码如下:
NO.A.3
OpenWithParm(w_showhide_analogclock,mf_itemtext(THIS.text))
(6)“快捷键设置”菜单的clicked事件程序代码如下:
NO.A.4
OpenWithParm(w_showhide_shortcutkey,mf_itemtext(THIS.text))
(7)“进度指示器”菜单的clicked事件程序代码如下:
NO.A.5
OpenWithParm(w_showhide_progress,mf_itemtext(THIS.text))
(8)“连续流水号生成”菜单的clicked事件程序代码如下:
NO.A.6
OpenWithParm(w_showhide_sequence,mf_itemtext(THIS.text))
(9)“颜色调配”菜单的clicked事件程序代码如下:
NO.A.7
OpenWithParm(w_showhide_color,mf_itemtext(THIS.text))
(10)“数字拼图游戏”菜单的clicked事件程序代码如下:
NO.A.8
OpenWithParm(w_showhide_game,mf_itemtext(THIS.text))
(11)“人事基本信息管理”菜单的clicked事件程序代码如下:
NO.A.9
OpenSheetWithParm(w_root_guistyle_browse,mf_itemtext(THIS.text),&
PARENTWINDOW,1,Layered!
)
(12)“快速查询”菜单的clicked事件程序代码如下:
NO.A.10
OpenSheetWithParm(w_root_guistyle_query,mf_itemtext(THIS.text),&
PARENTWINDOW,1,Layered!
)
(13)新建1个窗口,命名为w_softcase,title属性值设为“软件案例分析实验”,将菜单m_soft_case与该窗口相关联。
(14)应用soft_case的OPEN事件程序代码如下:
NO.A.11
//连接数据库
SQLCA.DBMS="O90Oracle9i(9.0.1)"
SQLCA.LogId="soft"
SQLCA.LogPass="soft"
SQLCA.ServerName="@soft"
CONNECT;
IFsqlca.sqlcode<>0THEN
//gs_connect为全局string型变量
gs_connect="数据库连接错误!
"
IFMessageBox("错误信息",f_fixedlen(gs_connect)+"~r继续否?
",&
stopsign!
YesNo!
2)=2THENRETURN
ENDIF
SQLCA.AutoCommit=FALSE
OPEN(w_soft_case)
(15)函数mf_itemtext(THIS.text)为菜单m_soft_case的菜单函数,代码如下:
NO.A.12
/*窗口函数
stringmf_itemtext(stringmf_itemtext)
*/
//----------------------------------------------------------------
//功能:
取菜单条的文本属性内容
//参数:
stringmf_itemtext为菜单名称
//返回值:
返回去掉Shift后的菜单名称
//----------------------------------------------------------------
integerli_pos
//只有Shift键有效
li_pos=POS(upper(arg_itemtext),"SHIFT")
IFli_pos>0THEN
RETURNLEFT(arg_itemtext,li_pos-2)
ELSE
RETURNarg_itemtext
ENDIF
2.创建祖先窗口w_showhide
(1)创建一个窗口w_showhide(见图A.2);
(2)在窗口w_showhide上放置1个按钮,命名为cb_exit,设置cancel属性为真,按钮上的文本为“退出”;
(3)窗口w_showhide的OPEN事件程序代码如下:
NO.A.13
w_soft_case.Hide()//隐藏主窗口w_soft_case
title=Message.StringParm
(4)窗口w_showhide的CLOSE事件程序代码如下:
NO.A.14
w_soft_case.show()//显示主窗口w_soft_case
(5)按钮cb_exit的clicked事件程序代码如下:
NO.A.15
CLOSE(PARENT)
图A.2开发环境中的祖先窗口w_showhide
该窗口被下列实验项目引用:
(1)数字钟表制作;
(2)模拟钟表制作;
(3)快捷键设置;
(4)进度指示器制作;
(5)连续流水号生成;
(6)颜色调配;
(7)数字拼图游戏。
实验2数字钟表制作
1.实验目的
(1)熟悉PB开发环境;
(2)了解时间函数的使用;
(3)正确使用窗口事件。
2.要求
(1)每秒至少刷新100次(精确到1/100秒);
(2)钟表显示数字的字号为120号以上;
(3)运行界面见图A.3。
3.实验步骤
(1)继承窗口w_showhide,命名为w_showhide_clock;
(2)在窗口w_showhide_clock上放置1个editmask控件,命名为em_clock,text属性项设为00:
00:
00:
00;
(3)在窗口的OPEN和timer事件中写相应程序。
图A.3数字钟表
4.问题
当刷新屏幕次数较多(如每秒100次以上)时,屏幕可能出现闪烁现象,怎样克服?
实验3模拟钟表制作
1.实验目的
(1)熟悉PB开发环境;
(2)了解时间函数和数学函数的使用;
(3)正确使用窗口事件和常用控件。
2.要求
(1)实现通常模拟时钟的基本功能,如图A.4所示;
(2)秒针每秒走一次,分针每分钟走一次或每秒按比例走一次,时针每分钟按比例走一次或每秒按比例走一次。
图A.4模拟钟表
3.问题
时钟秒针在指向横向(例如3点)和纵向(例如12点)时,秒针长度不一样,引起该问题的原因是什么?
如何解决?
实验4快捷键设置
1.实验目的
(1)了解快捷键的作用和按钮的捕捉过程;
(2)了解keycode数据类型和窗口key事件的使用;
(3)正确使用枚举类型数据和窗口事件。
2.要求
(1)将F2~F6(可设置到F12)键设置成对应功能按钮的快捷键;
(2)当按键盘Fi键时,显示“快捷键Fi”,2≤i≤6。
图A.5为按F4键后的运行界面。
图A.5快捷键设置
3.问题
(1)为什么快捷键没有使用F1键?
(2)如果功能键不够时怎样解决?
实验9三层结构录入界面
1.实验目的
(1)了解面向对象GUI三层结构;
(2)熟悉类的继承;
(3)正确使用数据窗口。
2.要求
(1)利用面向对象GUI三层结构思想实现对人事(或其他)基本信息的增加、编辑、删除、刷新、导出和打印功能(参考界面见图A.10和A.11);
(2)写出对应窗口的名称和作用、它们之间的继承关系以及在三层结构中所处的层。
图A.10浏览界面
图A.11录入或编辑
3.问题
当显示不同的操作界面时,左上角的菜单是否可以跟着变化,如何实现?
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 软件案例分析 软件 案例 分析 实验 指导书
![提示](https://static.bdocx.com/images/bang_tan.gif)