PowerBuilde教程

更新时间:2024-01-29 07:32:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

章 第

PowerBuilder简介

通过本章的学习,您将:

? 简单了解PowerBuilder和Sybase的历史; ? 了解PowerBuilder的面向对象开发技术; ? 了解OLE技术和事件驱动编程方式; ? 了解PowerBuilder 9.0的新增功能; ? 基本掌握PowerBuilder 9.0的开发环境。

1

PowerBuilder 9.0快速入门篇

1.1 PowerBuilder和Sybase的历史

PowerBuilder是PowerSoft公司于1991年发布的软件,最早版本为PowerBuilder 1.0。1994年,PowerSoft公司收购了Waicom公司,同时推出了InfoMaker产品;1995年也是非常有历史性的一年,Sybase公司和Powersoft公司合并,成为世界第六大独立软件商,而且发布的System 11是符合工业标准的高性能、高可用性、易扩展的新一代SQL Server产品;1996年,Sybase公司收购了Visual Components公司,同时推出了最经典的一个PowerBuilder版本——PowerBuilder 5.0;接着,Sybase公司又于1997年推出了Adaptive Server Enterprise11.5、Jaguar CTS1.1、PowerBuilder 6.0、Power++ 2.0、PowerJ 2.0、PowerSite、PowerDesigner 6.0。但是PowerBuilder 6.0由于存在不少Bug,最终升级为PowerBuiler 6.5这个相对成熟的版本。直到现在,很多PowerBuilder程序员都一直在使用这个版本。 1999—2000年推出了PowerBuilder 7.0,它采用了全新的框架结构,开发环境和以前的PowerBuilder完全不一样;2001年推出的PowerBuilder 8.0和2003年推出的PowerBuilder 9.0都采用了与PowerBuilder 7.0相同的框架结构。

1.2 PowerBuilder的面向对象开发技术

面向对象编程(OOP)与以往的第三代编程语言不同,OOP方法可以将程序和数据有机地结合到一种单元,就是我们一般说的类(Class),因为在对象中不仅仅包含着数据(即属性),还包含了过程(也叫做方法),然后用户可以用特殊的结构或者记录来实例化一个类,而这个实例化的类就称作对象,这个对象又可以复制和访问,可以自动实现重用。

作为面向对象的编程,另一个特点就是继承。当一个对象被创建完成后,就可以为这个类扩展出它的派生类,它们拥有父类的所有特性,又有属于自己的特殊方法和属性,这样就可以创建一个标准的通用类作为许多子类的父类。

举个简单的例子:

先创建一个人员基本信息的最基本的父类,假设父类是People,它有“姓名”、“地址”、“性别”、“所在城市”,这些都是人员最基本的信息,然后从People类扩展它的子类,子类命名为雇员Employee,它除了父类的这些基本信息以外,还有“职位”和“薪水”这两个特性,还可以另外从People这个父类派生出学生Student这个类,它的特点是要有“学历”、“所在学校”,这样父类的“姓名”、“地址”、“性别”、“所在城市”等信息就被复用了,如图1-1所示。

具体的例子会在后面的章节中着重讨论。

·2·

第1章 PowerBuilder简介

特殊性学生(Student) “学历”、“所在学校” 公有性基本人员类(People) “姓名”、“地址”、“性别”、“所在城市” 雇员(Employee) “职位”、“薪水”

图1-1 简单示例

1.3 OLE技术

OLE(Object Link Embed)在Windows操作系统中可以用同样的用户界面把各种应用程序集成在一起,现在的OLE技术已经可以自动集成多个运行的应用程序了。

OLE本身就是为了能让Windows应用程序实现进程间的相互通信而引出的一种技术,换句话说就是它提供了一种方式,使运行的应用程序能够互相对话,方便地在一起合作,并集成它们的功能,从而使工作更具效率。

OLE可以使其他的应用程序,比如Word、Excel、画图板等文档被连接或者嵌入到用户的应用程序中,以此来增加其功能。例如如果用户要编辑图片,那么提供画图板来不就显得更加直接和方便吗?另外,OLE功能允许一个应用程序通过发送命令方式控制一个或多个在后台运行的应用程序,而用户根本不必知道这所有的工作都是由其他应用程序完成的。

1.4 事件驱动编程方式

首先要阐述一下事件驱动的含义,其主要思想是,当你的程序运行时,它仅仅做一些初始化和相关的准备工作,然后就停止,等待用户输入相关的操作,否则它不会做任何事情;当用户按下键盘或者单击鼠标的时候,程序才会响应,而程序员不再控制该程序,交给用户来控制。所以现在的事件驱动方式已经完全改变了以前那种面向过程的编程理念,而且Windows整个操作系统就是以事件驱动为核心的,所以对程序员来说没有任何余地,一定要学习这种以事件驱动为主导的编程理念。而且,Powerbuilder的体系结构就是建立在事件驱动模式上的,所有的代码都是写在对象的事件中或者事件调用的公共过程、函数、

·3·

PowerBuilder 9.0快速入门篇

外部方法等之中。

1.5 PowerBuilder 9.0增加的新特性

前面简单地阐述了PowerBuilder的一些基本共性。那么PowerBuilder 9.0会给我们这些PowerBuilder程序员带来什么惊喜呢?Sybase官方的发布会上简单地介绍了PowerBuilder 9.0中将支持对Hard Device的支持,特别加强了针对WinCE等移动平台的支持,在Web方面将支持更多的第三方的Web Server,强化EAServer等。这些性能不在此册书籍中介绍,将在本丛书的《PowerBuilder 9.0 Web开发篇》中重点介绍。

1.6 PowerBuilder 9.0开发环境简要说明

要使用PowerBuilder 9.0,首先需要安装,如何安装请参考本书附录“安装PowerBuilder 9.0”。安装好PowerBuilder 9.0以后,就会在桌面创建一个PowerBuilder 9.0的运行快捷图标,双击此快捷图标以后就能启动PowerBuilder 9.0,启动后的主界面如图1-2所示。

图1-2 PowerBuilder 9.0主界面

先讨论一下主界面中的一些环境。大家注意到了NoWorkspace这些字样的窗口了吗?这个窗口是用来显示当前工作区的所有对象的,包括所有的类库、窗口、函数等。

由于当PowerBuilder默认打开的时候是没有打开任何工作区的,所以在工作区窗口里就显示NoWorkspace。现在我们可以尝试打开配套光盘上的Workspace。单击File菜单中的Open Workspace菜单项,然后在光盘中选择一个pbw文件(因为PowerBuilder的所有工作区都要保存成后缀名为pbw的文件)。当打开一个工作区文件以后就会在此窗口中显

·4·

第1章 PowerBuilder简介

示所有的对象,如图1-3所示。

图1-3 工作区窗口

这样对于程序员来说就可以方便地打开其中的任意一个对象来进行编辑操作。如果需要打开某一个对象的话只要双击它就可以了,这大大地加快了开发速度。除了这种打开对象的方式以外,还可以使用File菜单中的Open菜单项来打开,单击完Open菜单以后将会显示如图1-4所示的窗口。

图1-4 打开对象窗口

此窗口里面的内容比较多,介绍如下: Target:当前打开的目标文件。

Library:当前选中的类库。很有可能一个工作区中会有多个类库文件存在。 Object Name:当前选中的对象名称。

·5·

PowerBuilder 9.0快速入门篇

Objects of Type:选择对象类别。在这个列表中列出了所有的PowerBuilder中的对象,用户只要选择每种对象,那么在主对象列表框中就会显示当前类库中对应每种对象的所有对象实例。

只要用户选中了具体的一个对象,就可以单击OK按钮来打开它,如果不需要打开可以单击Cancel按钮,还可以单击Help按钮来获取帮助信息。其实,不论从工作区窗口打开对象,还是从Open窗口中打开窗口,所起到的作用都是一样的。具体如何打开是由每一个程序员的使用习惯决定的。

介绍完工作区窗口以后,再来看工作区窗口下面的那个窗口。这个窗口是复制粘贴窗口,在这里可以记录经常要进行复制粘贴的语句或文字,如图1-5所示。

在这个窗口上一共有5个工具按钮,从左到右说明。第一个按钮Paste From clipboard to window能把剪贴板里面的内容复制到当前的复制粘贴窗口中去,在Preview栏里就会显示粘贴过来的内容;第二个按钮Copy from Clipwindow to clipboard能把选中的内容复制到剪贴板中,Clipwindow就是图1-5所示的复制粘贴窗口;第三个按钮Rename能将当前起好名字的内容重新命名,如选中Name是1的那一项,然后单击Rename按钮,就可以编辑Name

的内容,可以把1改成其他名称;第四个按钮Delete用来删除在复制粘贴窗口中选中的项;最后一个按钮Modify的作用是用来修改关于某一项剪切内容的描述,也就是说用来修改Description栏中的内容,当选中一项,并单击Modify按钮的时候,会弹出如图1-6所示的窗口。

在For Clip Entry里列出的是当前正在编辑的剪切内容的名称。下面的Add/Update Description是用来编辑的描述内容。编辑完成以后单击OK按钮完成修改,也可以单击Cancel按钮来取消修改。

最下面的那个窗口是用来输出各种信息的窗口,在PowerBuilder里被称为Output窗口,经常可以用到它。例如,当一个系统已经开发完成了,需要最后编译分发

程序,那么在系统编译的时候就会用到它。因为PowerBuilder会把所有的编译信息在此窗口中输出,如图1-7所示。

在Output窗口中列出了详细的编译过程。

如果程序员觉得同时打开这3个窗口太占地方,而实际编辑的区域太小,可以关闭这3个窗口。也可以在Window菜单

中再次打开它们,只要在Window菜单的System Tree、Clip Window、Output这3个菜单项上打勾就可以了。

·6·

图1-7 Output窗口

图1-6 Clip Description窗口

图1-5 复制粘贴窗口

第1章 PowerBuilder简介

介绍完3个工作区窗口以后,再介绍一下Tools菜单中的一些内容。由于Run菜单主要在调试程序时用,其内容相对比较复杂,所以这些内容将会在丛书的其他分册中介绍,这里不做阐述。

单击Tools菜单,里面一共有10个菜单项,如图1-8所示。这里只重点介绍其中的几个。

Toolbars用来配置PowerBuilder中工具栏的显示和位置分布情况。此处不进行说明,以后的章节都是以PowerBuilder默认的工具栏进行阐述的。

KeyBoard Shortcuts是用来配置一些菜单的快捷键。这完全可以根据程序员自己的使用习惯来进行配置。单击此菜单项后将会出现如图1-9所示的窗口。

配置的时候选择Current Menu里需要配置的菜单项,然后选择Press Keys for shortcut。现在需要做的是按下需要配置的快捷键就可以了。如果觉得不满意还可以单击Remove按钮删除当前的快捷方式。单击Reset按钮可以用来初始化菜单的默认快捷方式。当所有的快捷按钮配置完成以后,可以单击OK按钮来完成设置。当然也可以单击Cancel按钮取消操作。

System Options用来配置PowerBuilder环境。当选择此菜单项以后将会显示如图1-10所示的配置窗口。

图1-8 Tools菜单项

图1-9 KeyBoard Shortcuts窗口 图1-10 System Options General窗口

首先来看一下System Options窗口中的General标签: Initialization Path:PowerBuilder 9.0运行时的初始化路径。 Prompt On Exit:退出PowerBuilder 9.0的时候是否出现提示信息。 Just In Time Debugging:使用实时调试。

Automatically Clear Output Window:自动清除Output窗口中的内容。 Horizontal Dock Windows Dominate:水平浮动窗口位置。

Free Database Driver Libraries on Disconnect:当断开数据库连接时自动释放数据库驱动列表。

·7·

PowerBuilder 9.0快速入门篇

Enable PBDebug Tracing:使用调试步进。

Prompt Before Overwriting PBDebug Output File:在覆盖调试输出文件的时候进行提醒。 PBDebug Output Path:设置调试输出文件的所在文件夹和文件名称。

当完成General标签的配置设置完成以后可以进行WorkSpace标签栏的配置。WorkSpace选项卡如图1-11所示。

图1-11 System Options WorkSpaces窗口

WorkSpaces选项卡里面的内容较少,也比较容易理解,介绍如下: Show start dialog at startup with no workspace:显示开始的Welcome对话框。 Reopen work space on startup:当开始启动的时候重新打开工作区。

Reload painters when opening workspace:当打开一个工作区的时候重新打开画板。 Recent objects list contains:当前对象列表最多允许的个数(上限是36个)。 Recent workspaces list contains:当前工作区最多允许列表个数(上限是36个)。 Recent connections list contains:当前最多允许的连接数。

这些列表限制的个数到底是什么地方的限制个数呢?其实很简单,就是File菜单中的Recent objects、Recent workspaces、Recent Connections这3个菜单项中的子菜单项列表,如图1-12所示。

图1-12 Recent objects、Recent workspaces、Recent Connections菜单

·8·

第1章 PowerBuilder简介

Font选项卡是用来配置显示的字的字体类别、字体大小、字体颜色等特性,此处不具体介绍,该选项卡如图1-13所示。

System Options余下的3个选项卡的内容由于其涉及PowerBuilder的网页开发和其他高级应用,具体内容可以参考本丛书的《PowerBuilder 9.0 Web开发篇》。

System Options用来配置PowerBuidler运行和使用时的环境,所以在做此设置的时候要特别注意。万一配置错误,请按照书中的设置进行恢复。

To Do List用来给程序员记录需要完成的任务,功能类似于便笺,如图1-14所示。

图1-13 System Options Font窗口 图1-14 To Do List窗口

在最上面的下拉列表中可以选择对应的目标库文件,然后可以编辑相应的内容。这里没有任何的工具栏按钮,所有的操作都需要用鼠标右键单击窗口,在弹出的菜单里选择相应的操作。这些操作包括添加列表项、删除列表项、导入导出列表项等。此处不再赘述,希望读者能在使用的过程中慢慢体会其中的奥妙。

Browser里的内容在本丛书的《PowerBuilder 9.0基础开发篇》和《PowerBuilder 9.0进阶开发篇》中将会进行详细的介绍。

Library Painter可以用来打开浏览本机或者网络中的任意一个类库文件。它不像工作区窗口那样仅仅只能打开工作区所包含的类库文件,而是可以打开任意一个PowerBuilder类库文件,可以浏览或者打开类库里的任意一个对象。Library窗口如图1-15所示。

图1-15 Library窗口

·9·

PowerBuilder 9.0快速入门篇

从图1-15可以看出,Library窗口像一个Windows的资源管理器,惟一的区别是它还能浏览PowerBuilder特定的类库文件中的对象。

Tools菜单中的其他菜单项,如Database Profile、Database Painter等都会在第7章中详细介绍。EAServer Profile将会在本丛书的《PowerBuilder 9.0 Web开发篇》中进行介绍。

File Editer是一个内嵌在PowerBuilder中的文本编辑器,由于从PowerBuilder 8.0以后都支持了双字节,新版本的File Editer也都支持了双字节的编辑。

当程序员在使用PowerBuilder的过程中如果有不明白的地方,或者想要查找具体一个函数的用法时,可以单击Help菜单中的Contents菜单项,或直接按F1键就可以了。若需要知道更加多的帮助文档,可以单击Help菜单中的Sybase Online books site菜单项,PowerBuilder会起用系统的默认浏览器登录Sybase的官方网站显示相对应的页面。还有,在PowerBuilder的编辑区的右下角显示了当前版本的信息,用户可以获得相应的版本信息。

·10·

本文来源:https://www.bwwdw.com/article/emew.html

Top