浅谈PowerBuilder中窗口继承的使用

时间:2022-10-23 04:46:34

摘 要:PowerBuilder技术在现代软件开发中属于一项领先技术,本文描述了在PowerBuilder创建继承窗口的方法,这也是PowerBuilder一项关键技术,掌握了该方法,会给软件应用及管理系统开发带来极大便利,适用于管理信息系统设计过程中相似窗口界面布局。

关键词:窗口继承;父窗口;子窗口;控件

中图分类号:TP31 文献标识码:A DoI: 10.3969/j.issn.1003-6970.2012.04.007

Discussion On the Use of Inheritance in Windows PowerBuilder

XIe Yu

(SiChuan Information Technology College, GuangYuan 628040,China)

【Abstract】 the technology of PowerBuilder in modern software development is a leading technology, this paper describes the created in PowerBuilder inherited window method, which is the PowerBuilder of a key technology, mastered the method, will give the software application and management system development bring great convenience, applied to management information system design process similar to windows interface layout.

【Key words】window inheritance; the Parent window; window; Control

在子系统设计中,由于考虑到多处用到类似的窗口和数据窗口,所以采用先创建一个祖先窗口,以后其他窗口都从祖先窗口继承的办法来创建各个子窗口[1-2]。

创建祖先窗口w_xmodfather,第一步方法与创建w_ xmain窗口方法一样,只是在设置属性时有较大的不同,只需要将其属性WindowType设置为“main!”,其余属性全部采用默认值即可。创建祖先窗口的第二步是在窗口中添加一个数据窗口控件dw_1,这样从祖先窗口w_xmodfather继承下来的所有子窗体都会自动包含一个数据窗口控件dw_1。第三步是在窗口的右下方放置四个控件按钮,其click事件中分别用来实现数据窗口控件中数据的增加、删除、保存以及窗口关闭的功能。在后面的业务父窗口w_xbusfather的创建方法类似。[3]

为w_xmodfather父窗口添加用户自定义事件及其脚本

在作其他工作之前,首先为父窗口w_xmodfather的open事件增加如下的脚本:

dw_1.settransobject(sqlca)

这一句脚本的作用是将数据窗口控件dw_1与Powerbuider默认的全局事务对象SQLCA关联起来,这样就可以直接使用数据库操纵语句操纵数据库了。

在cb_1的“增加”的click事件中输入下面的程序代码:

long g_currownum

g_currownum=dw_1.InsertRow(0) //在dw_1的最后一行插入一行

dw_1.SetFocus() //dw_1获得焦点

dw_1.ScrollToRow(g_currownum) //滚动到当前行dw_1.SetColumn(1) //设置焦点为此行的第1列

在cb_2的“删除”的click事件中输入下面的程序代码:g_currownum=dw_1.getrow() //得到当前记录号deleterow(dw_1,g_currownum) //删除当前记录在cb_3的“保存”的click事件中输入下面的程序代码:if update(dw_1,true,false)=1 then //保存修改成功,提交修改

dw_1.resetupdate()

commit using SQLCA;

Messagebox(“成功”,”保存成功!”) Else

rollback; //保存修改失败,取消所做的修改

Messagebox(“保存错误!!!”,”数据保存失败”)//弹出一个对话框警告

end if

在cb_4的“退出”的click事件中输入下面的程序代码:close(parent) //关闭父窗口

创建数据库

在系统上安装Microsoft公司的SQL Server 2000企业版(在Windows98下使用本例,请安装SQL Server 2000个人版)。[4-5]

启动SQL Server 2000中的“企业管理器”,建立一个名为“jcgxxt”的数据库。

启动SQL Server 2000中的“SQL查询分析器”,选择“SQL Server 身份验证(Q)”,登录名为“sa”,密码为空,然后单击“确定”按钮。

输入如下代码,在指定文件中建立数据库。

CREATE DATABASE jcgxxt

ON

( NAME =jcgxxt_dat,

FILENAME = ‘D:\教材购销系统\数据库\jcgxxtdat. mdf’,

SIZE = 10,

MAXSIZE = 50,

FILEGROWTH = 5 )

LOG ON

( NAME = ’jcgxxt_log’,

FILENAME = ‘D:\教材购销系统\数据库\jcgxxtlog. ldf’,

SIZE = 5MB,

MAXSIZE = 25MB,

FILEGROWTH = 5MB )

GO

操作之后在D:\教材购销系统\数据库中建立了一个名叫jcgxxt的数据库

在数据库中建立自己所需要的表格:

以操作员信息表为例

create table login

id char(10),

password char(20)

至此数据库创建完成。

连接数据库

在Windows2000下配置ODBC,先在“控制面板”里双击“管理工具”,再在“管理工具”里双击“数据源(ODBC)”进入“(ODBC)数据源管理器”窗口,选择“系统DSN”选项卡,单击“添加”按钮,打开“创建新数据源”窗口,在名称列表框里选择“SQL Server”,单击“完成”按钮,进入“建立新的数据源到SQL Server”窗口,在“名称”后的文本框中输入jcgxxt,再在“服务器”后面的下拉列表框中输入(local)或计算机名,确认输入无误后单击“下一步”按钮,取默认设置(若用默认设置连接失败,则点击另一个单选按钮,设置“登录 ID”为 sa ),单击“下一步”按钮,点选“默认的数据库为”,并在其下的下拉列表框中选择“jcgxxt”作为默认的数据库,其他取默认值,单击“下一步”按钮,取默认值,单击“完成”按钮,进入“ODBC Microsoft SQL Server 安装”窗口,单击“测试数据源”按钮,进入“SQL Server ODBC 数据源测试”窗口,检查ODBC 配置是否成功,如果成功,单击“确定”按钮,返回“ODBC Microsoft SQL Server 安装”窗口,单击“确定”按钮,完成配置。[6]

运行和调试

在运行前,由于操作不规范,出现了以下的问题:

(1)数据库名称不规范;

(2)服务器名与windowsID不一致;

(3)建立对象名和数据库名混淆;

(4)安装路径不统一,导致还原或备份的数据出错。

在总结了以上原因之后,我们终于顺利的运行了程序,并对其进行了调试,达到了预期的效果,使该系统的开发取得了基本上的成功。

在PowerBuilder使用过程中,我发现使用这种关键技术非常方便的创建了其他相同的窗口,在这里给大家一起探讨和分享。

参考文献

[1] 明德祥.Powerbuiler 8.0网络技术与应用. 清华大学出版社.2002年05期: 253-254.

[2] 崔杜武,姚全珠,范艳华等. Powerbuiler 9.0从基础到应用.人民邮电出版社.2002年04期:35-35.

[3] 何旭洪,余建英. PowerBuilder9.0 数据库系统开发实例导航.人民邮电出版社. 2001年11期:236-236.

[4] Sybase 参考手册.copyright翀1981-2001 by Sybase,inc. 2001年06期: 36-37.

[5] Yao S B.赵延光,刑俊英等编译.数据库系统基础.计算机工程与应用.1981年03期: 16-16.

[6] 石树刚,郑振楣.关系数据库.清华大学出版社.1993年08期:21-22.

上一篇:基于ERP的工程项目管理系统设计与开发 下一篇:可编程控制器控制直流电动机在恒压供水中的应...