第二章 PowerBulider

来源:百度文库 编辑:神马文学网 时间:2024/05/01 20:06:12
第二章  PowerBuilder
教学要求
PowerBuilder应用程序与数据库管理系统
PowerBuilder的主要对象
PowerBulider的常用控件
数据窗口
用户对象
窗口与对象之间的通讯
用户事件
应用程序的开发步骤
数据管道
教学要求
掌握:PowerBuilder的主要对象
掌握:用户对象的分类、创建和使用
掌握:用户事件
了解:数据库的应用
掌握:软件开发工具与环境相互关系
了解:软件开发的基本过程
返回页首1、PowerBuilder应用程序与数据库管理系统
PowerBuilder是数据库应用开发工具。对于如Oracle、Sybase、Informix等大型数据库,PowerBuilder提供能够充分发挥其性能的专用接口,使开发者能够灵活使用各种大型数据库系统。同时,开发者还可以通过ODBC接口直接访问诸如FoxPro、SQL Anywhere等小型数据库系统。PowerBuilder支持应用系统同时访问多种数据库,即它可以通过各种接口同时对各种数据库进行操作,方便开发者进行数据库应用开发。
返回页首
2、PowerBuilder的主要对象
窗口和菜单是PowerBuilder中最重要的对象。用户可以通过窗口向应用程序提供必要的数据、发出指令以完成任务,而应用程序通过窗口显示运行状态和结果;同时窗口是其它PB可视对象(如各种控件)的物理载体。而菜单为应用程序的操作更为简便。窗口和菜单的结合既增加了程序的功能,又方便了用户的操作。
(一)窗口对象
在PowerBuilder中,窗口是十分重要的对象,它通过窗口画笔来定义,将各种控件、菜单与窗口融合成一个整体作为应用程序与用户交互的界面。
窗口的组成:
(1)属性:定义窗口的外观及行为。
(2)事件:编写各类窗口响应代码可响应对窗口相应的操作。
(3)函数:用于操作窗口。
(4)控件:放置在窗口中的图形对象。
窗口的分类:
(1)主窗口(Main Window):独立的窗口,可以带有菜单,能够最大化和最小化;可以覆盖其它窗口,也可以被其它窗口覆盖。
(2)弹出式窗口(Popup Window):由另一个窗口打开,可以移出父窗口,随父窗口的最小化(关闭)而最小化(关闭);可以带有菜单,能够最大化和最小化;可以覆盖父窗口,但不能被父窗口覆盖;一般用于显示文字信息、显示进度提示和输入用户的选择。
(3)子窗口(Child Window):从主窗口或弹出式窗口中打开,从属于父窗口,不能完全(可以部分)移出父窗口,随父窗口的移动(关闭)而移动(关闭);没有菜单,能最大化和最小化。
(4)响应窗口(Response Window):用于向用户请求信息,在父窗口中打开,用户必须对其执行操作(如关闭)后才能操作其它窗口;可以带有控制菜单,不能最大化和最小化。
(5)MDI框架窗口(MDI Frame)和带微帮助的MDI框架窗口(MDI Frame With Microhelp):可构成多文档界面,由标题、菜单、工具栏、客户区、状态栏组成。
(二)菜单对象及创建
菜单通过菜单画笔来定义,通过设置菜单项的名称及相应的特征和行为属性来控制菜单的执行。菜单的创建步骤:
(1)使用菜单画笔新建菜单,建立相应的菜单标题,并按需要为各菜单标题建立菜单项。
(2)选择相应的菜单项,单击编程图标,从事件列表中选择Clicked事件,输入菜单项的执行代码。
(3)为其它菜单项编辑事件代码。
(4)按需要为各菜单项设置各类特征。
(4)保存菜单对象。
(5)在需要插入该菜单的窗口上插入所建菜单。
返回页首
3、PowerBuilder的常用控件
利用PowerBuilder所提供的各类控件可完成各类界面设计任务而无需编写代码,用户只需对控件设置相应属性便可灵活使用。PB6.0常用控件主要有以下几种:
按钮:包括命令按钮(CommandButton)和图形按钮(PictureButton),通过为其编写相应代码可以执行相应的操作 复选框(CheckBox):以图形化的方式提供给用户作出多重选择 单选框(RadioButton):以图形化的方式提供给用户作出唯一选择 静态文本框(StaticText):静态显示文本信息 图像控件(Picture):在窗口中插入图像 编辑框:包括单行编辑框、多行编辑框、掩码编辑框和超文本编辑框。提供各类方式方便用户输入相应的文本信息 数据窗口控件:动态在窗口中显示各类数据
返回页首
4、数据窗口
数据窗口的功能:
数据窗口对象是PowerBuilder中功能强大的一个对象,也是PB区别于其它数据库开发工具的主要地方。数据窗口对象主要用于操作数据库中的数据(不能操作数据库中的数据定义),它不仅可以以各种风格的表现形式显示数据库中的数据,还可以用图形化的方式增加、删除、修改、更新、查询数据库中的数据。另外,如果在窗口中使用数据窗口对象,还可以动态地操作数据库中的数据。
数据窗口的创建步骤:
(1)使用数据窗口画笔打开选择数据窗口对话框;
(2)单击New新建数据窗口,出现"New DataWindow"对话框;
(3)在数据源中选择数据源选择形式,并在表现风格栏中选择数据窗口表现风格;
(4)若需要可以单击options,为数据窗口设置外观形式,完成后单击OK;
(4)选择需要表现的数据表及相应的列,选择完毕后单击OK,便完成创建。
返回页首
5、用户对象
在PB中,各类控件都带有预定义好的事件,将这些控件有机结合起来就构成了PB应用程序的基本框架,但有时这些控件不能满足应用程序的要求,便应该扩展这些控件。用户对象就是在对PB现有控件进行扩展之后形成的、封装有一组相关代码和属性、完成特定功能的对象。
用户对象的优点(作用):
(1)对用户对象的重用避免在应用程序的不同地方编写相同或相近代码的麻烦,提高了应用程序的效率和可维护性。
(2)用户对象可以将一组总是在一起使用的可视控件组合在一起,完成一组特定功能,应用程序可随时调用。
(3)用户对象提供了构造具有一致外观可视部件的方法。
(4)用户对象可以将相关功能封装在一起。
(5)用户对象允许开发人员扩展PB系统对象。
用户对象的分类
总体可分为下列两类:
(1)可视用户对象:具有可视外观,主要完成应用程序与用户之间的信息交流。有下列三种类型:
标准可视用户对象:继承原始控件的各种特征(包括属性、事件和函数),并对其进行扩充,增加应用程序需要的功能。常用于对窗口控件的继承和扩充。 定制可视用户对象:将多个控件以及可视用户对象组合成一个整体,完成一定的操作。定制可视用户对象与标准可视用户对象的一个明显差别是:定制可视用户对象包括多个控件。 外部可视用户对象:在PB应用程序中使用外部语言编写的控件,用于PB本身难以完成的功能。
(2)类用户对象:没有可视成分,通常用于封装应用逻辑和特定功能。使用类用户对象时,在代码中创建该对象的实例,然后再调用它的函数。有下列三种类型:
标准类用户对象:继承PB内置非可视对象的定义,通过编写代码进行扩展新功能。 定制类用户对象:封装不需要可视特性的处理过程,只有两个系统预定义事件:Constructor和Destructor。 C++类用户对象:通过C++的类机制将相关函数和数据封装后,置入PB,供PB应用程序使用。
创建用户对象的一般步骤
(1)使用用户对象画笔打开选择用户对象对话框,若要新建用户对象,选择"New";
(2)系统出现"New User Object"对话框,它列出各种用户对象类型,根据需要选择用户对象类型后,单击"OK";
(3)根据所选择的用户对象类型开始创建用户对象;(创建方法见课本P44-46)
(4)创建完成后保存用户对象。
返回页首
6、窗口与对象之间的通讯
窗口与对象之间若需要交换信息,可以通过以下几种通讯方式:
(1)使用函数:通过定义和使用公共的用户对象级函数将内部信息传递到窗口。
(2)使用用户事件:为用户对象定义相应的用户事件,并为这些事件编写相应的代码和设置相应参数。窗口通过触发这些事件完成通讯。
(3)直接引用用户对象属性:通过实现一些小的功能完成通讯。
返回页首
7、用户事件
当各类控件、用户对象所预定义的事件不能满足应用程序的需要时(比如在特定情况下需要执行某段代码),可以按需要为对象定义自己的事件,将用户事件。
用户事件的使用场合:
(1)解决用户对象与窗口的通讯问题。
(2)响应特殊操作。
(3)支持用户通过多种方式完成同一个功能。
用户事件的定义步骤:
(1)打开所要定义用户事件的对象,选择相应的对象;
(2)从"Declare"菜单选择"User Events",打开"Events"对话框;
(3)若要定义新用户事件,在"Events"对话框的最后一行输入事件名(一般以ue开头)和选择事件标识;
(4)若要创建自定制事件,单击后面的"Args.."按钮,出现"Event Declaration"对话框;
(5)在"Event Declaration"对话框中输入或选择相应参数,完成后选择"OK"。
返回页首
8、应用程序的开发步骤

返回页首
9、数据管道
数据管道提供了在数据库内部、数据库之间,甚至不同数据库系统之间快速复制数据的简便途径,它的主要功能有:
(1)把一个或多个表中的数据(可选择是否连同数据属性)灌入到相同或不同数据库系统的一个表中。
(2)把整个表一次性地复制到另一个数据库中,可使开发环境与应用环境达到一致。
(3)创建一个与原表相同的结构(即不复制数据,只复制表结构)。
(4)将网络数据库服务器上的数据复制到本地数据库中,减轻网络访问过密造成的压力。
(5)提供在修改表结构的同时保留表中数据的另一种手段。
数据管道创建的一般步骤:
(1)使用数据管道画笔打开数据管道选择对话框,单击"New",进入新数据管道对话框。
(2)选择源数据库和目标数据库系统,单击"OK",进入数据表选择对话框。
(3)选择要复制的数据源表和相应的列,单击"OK",进入数据管道窗口。
(4)选择存放数据的目的表(或新建表),设置数据管道操作类型、运行时事务提交频率、容许的最大错误数、是否同时复制表的扩展属性。
(5)数据管道创建完成,保存后可选择菜单Design->Execute执行。