PowerBuilder 10.5实用教程 教学课件 ppt 作者 樊金生 等主编 14

上传人:E**** 文档编号:89189651 上传时间:2019-05-21 格式:PPT 页数:34 大小:114KB
返回 下载 相关 举报
PowerBuilder 10.5实用教程 教学课件 ppt 作者 樊金生 等主编 14_第1页
第1页 / 共34页
PowerBuilder 10.5实用教程 教学课件 ppt 作者 樊金生 等主编 14_第2页
第2页 / 共34页
PowerBuilder 10.5实用教程 教学课件 ppt 作者 樊金生 等主编 14_第3页
第3页 / 共34页
PowerBuilder 10.5实用教程 教学课件 ppt 作者 樊金生 等主编 14_第4页
第4页 / 共34页
PowerBuilder 10.5实用教程 教学课件 ppt 作者 樊金生 等主编 14_第5页
第5页 / 共34页
点击查看更多>>
资源描述

《PowerBuilder 10.5实用教程 教学课件 ppt 作者 樊金生 等主编 14》由会员分享,可在线阅读,更多相关《PowerBuilder 10.5实用教程 教学课件 ppt 作者 樊金生 等主编 14(34页珍藏版)》请在金锄头文库上搜索。

1、第十四章 应 用 实 例,14.1 实 例 概 述,本书的实例是一个科研成果管理系统。 本实例的功能包括了下面四部分: (1)录入 (2)查询 (3)统计 (4)设置,14.2 创建一个应用,创建一个工作空间(Workspace)kygl、 创建一个目标(Target)kygl 创建一个应用(Application)kygl,在应用的Open事件中写语句,Solca.DBMS = “ODBC“ Solca.AutoCommit = False Solca.DBParm = “Connectstring=DSN=kygl“ Connect Using Sqlca; If Sqlca.Sqlcod

2、e 0 Then MessageBox(“与数据库连接失败“,“错误。请稍后再试,或者向管理员联系。“) Return End If /Open(w_userid),14.3 数据库设计,科研人员简历表(employees) 科研项目情况表(items) 项目参加人员表 (member) 获奖情况表(prize) 辅助编码表 (code) 用户口令表 (yhkl),14.4 创 建 表,14.5 创 建 窗 口,主菜单窗口w_main 用户登录窗口w_userlogin 维护窗口w_employees_maintain、w_items_maintai 录入窗口w_employees_input

3、、w_items_input、w_prize_input 编辑窗口w_employees_modify、w_items_modify 查询窗口w_employees_browse、w_prize_browse 统计窗口w_employees_stat、w_items_stat、w_items_fun_stat、w_prize_stat 编码设置窗口w_code,创建用户登录窗口,图14-4 用户登陆窗口,在“确定”按钮的Clicked事件中写代码,string ls_user,ls_password ls_user=sle_user.text select yhkl into :ls_pass

4、word from yhkl where yhmc=:ls_user; if sle_user.text=“or sle_password.text=“then messagebox(“,“用户名或口令不能为空!“) return end if if sle_password.text=ls_password then open(w_main) close(parent) else messagebox(“,“用户名或口令错误!“) end if gs_user=ls_user /把用户名存储在全局变量中,创建录入和编辑窗口,首先创建用于录入和编辑科研人员的祖先窗口,祖先窗口的代码, 定义实例

5、变量: blob ib_emp_pic/存储图片,祖先窗口的代码, 在窗口的Open事件中编写如下代码: dw_1.settransobject(sqlca) setnull(ib_emp_pic),祖先窗口的代码, 在窗口的CloseQuery事件中写如下代码:,/退出窗口前,检查数据是否修改,提示是否存盘 long ll_backvalue if (dw_1.modifiedcount()+dw_1.deletedcount() 0) then ll_backvalue=messagebox(“警告“,“数据已修改,存盘吗?“,question!,YesNoCancel!) if ll_b

6、ackvalue=3 then message.returnvalue=1 elseif ll_backvalue=1 then cb_save.triggerevent(clicked!) else end if end if,祖先窗口的代码, 创建一个函数wf_save(),此函数没有参数和返回值,代码略。,祖先窗口的代码, 在“确定”按钮cb_save的Clicked事件中编写如下代码: wf_save() close(parent),祖先窗口的代码, 在浏览图片按钮cb_browse的Clicked事件中编写代码,略。,创建科研人员详细情况录入窗口,从祖先窗口继承,创建科研人员详细情况

7、录入窗口, 在窗口w_employees_input的Open事件中编写如下代码: long ll_newrow ll_newrow=dw_1.InsertRow(0) dw_1.ScrollToRow(ll_newrow) dw_1.SetFocus(),创建科研人员详细情况录入窗口, 在“增加”按钮的Clicked事件中编写如下代码: wf_save() p_1.picturename=“null“ setnull(ib_emp_pic) dw_1.reset() dw_1.insertrow(0) dw_1.setfocus(),创建科研人员编辑窗口,从祖先窗口继承,创建科研人员编辑窗口

8、, 在窗口的Open事件中编写如下代码: long ll_rows string ls_code ls_code=message.stringparm ll_rows=dw_1.retrieve(ls_code) selectblob picture into:ib_emp_pic from Employees where em_code=:ls_code; p_1.setpicture(ib_emp_pic),创建科研项目录入和编辑的祖先窗口, 创建新窗口,窗口的类型为Response。 窗口上的控件如 教材表14-2所示 在窗口的Open事件中编写如下代码 在窗口的CloseQuery事件

9、中编写如下代码 创建一个函数wf_save() 在“确定”按钮的Clicked事件中编写如下 在项目参加人员控件中编写如下代码,创建科研项目情况录入窗口,从祖先窗口继承 在窗口上添加命令按钮cb_add。 在窗口的Open事件中编写如下代码 在“增加”按钮cb_add的clicked事件中编写如下代码,创建科研项目情况编辑窗口,从祖先窗口继承 在窗口的Open事件中编写如下代码: long ll_rows string ls_code ls_code=message.stringparm ll_rows=dw_1.retrieve(ls_code),创建祖先窗口w_input,主要目的是以下窗

10、口要继承: 创建科研成果窗口w_prize_input 科研项目人员参加窗口w_member_input 编码设置窗口w_code,创建科研成果录入窗口,从窗口w_input继承创建w_prize_input,并把标题改为“科研成果录入窗口”。,创建科研项目参加人员录入窗口,从窗口w_input继承创建w_member_input,并把标题改为“科研项目参加人员录入窗口”。,14.5.4 创建维护窗口,创建科研人员维护窗口 创建科研项目维护窗口,14.5.5 创建查询窗口,创建科研成果详细情况查询窗口 创建科研人员详细情况查询窗口,14.5.6 创建统计窗口,创建各部门科研人员统计窗口 创建各

11、部门科研项目数统计窗口w_items_stat和各获奖等级的科研成果数窗口w_prize_stat 创建项目经费浏览窗口,14.5.7 创建设置窗口,创建编码设置窗口 创建更改密码窗口,14.6 创 建 菜 单,图14-9 设计时的菜单,14.7 将主菜单与主窗口连接,主菜单创建好后,只有与特定的窗口连接才能在运行中应用。在System Tree工作区中打开窗口w_main,在窗口的属性工作区中选择窗口的类型为mdihelp!,在MenuName项中选择我们刚创建好的主菜单m_main。最后单击Save图标退出。,14.8 创建数据窗口,14.8.1 创建下拉数据窗口 14.8.2 创建录入数据窗口 14.8.3 创建有检索参数的数据窗口 14.8.4 创建查询数据窗口 14.8.5 创建表格统计数据窗口 14.8.6 创建图形统计数据窗口 14.8.7 创建编码设置数据窗口,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号