PowerBuider 8.0高级应用技术
2002-5
清华大学出版社
崔巍
321
505000
本书从多个角度介绍了PowerBuilder 8.0的应用技术和高级使用方法。绪论和第1章是序篇,简单介绍了面向对象的程序设计方法和快速学习PowerBuilder 8.0的捷径;第2-12章则分别介绍了一些PowerBuilder 8.0的高级用法,主要内容包括:MDI应用、多窗口实例、数据管道、统计图、RichText、OLE和DDE等程序设计技术,及一些高级控件的使用和编程方法;第13-17章则重点介绍了PowerBuilder 8.0的分布式开发方法,主要包括EAServer(Jaguar)组件和客户端的开发、以及COM/MTS组件和客户端的开发方法等。 本书适合于具有一定PowerBuilder的使用和开发基础、而又想进一步提高的读者或开发人员阅读。
结论 面向对象程序设计
0.l 面向对象的术语
0.2 面向对象技术在PowerBuilder中的实现
0.2.1 继承
0.2.2 封装
0.2.3 多态性
0. 3 PowerScript语言使用的几个专题
0.3.l 常量说明
0.3. 2 控制对实例变量的存取
0.3. 3 解决命名冲突
0.3.4 祖先对象程序的返回值
0.3.5 函数和事件的参数类型
0.3.6 祖先和子孙变量
第1章 快速捷径
1.l 关于样本程序
1.2 运行样本程序
1.2.1 浏览和运行样本程序
1.2.2 查找自己想要的内容
第2章 MDI应用程序
2.l 什么是MDI
2.l.1 MDI窗口的构成
2.l.2 标准MDI窗口和定制MDI窗口
2.2 建立MDI窗口
2.3 在 MDI窗口中打开工作窗口
2.3.1 OpenSheet函数
2.3.2 OpenSheetWithParm函数
2.4 MDI窗口的MicroHelp
2. 4.l 菜单项的MicroHelp
2.4. 2 控件的MicroHelp
2. 5 MDI窗口的工具栏
2. 5.1 MDI窗口工具栏的一些概念
2.5. 2 在Menu画板中设置工具栏的属性
2.5. 3 建立工具栏中的下拉图标列表框
2.5.4 在Window画板中设置工具栏的属性
2.5.5 在Application画板中设置工具栏的属性
2.5.6 在MDI应用程序中灵活使用工具栏
2. 6 调整客户区域的尺寸
第3章 多窗口实例
3. 1 概述
3. 2 多窗口实例的使用
3.3 窗口数组
3.3. 1 窗口数组的说明和使用
3.3.2 操作窗口数组
3. 3. 3 混合窗口数组
3. 4 实例窗口中控件的引用
第4章 事务对象与数据库操作
4. 1 事务对象的一些概念
4. 2 事务对象的使用
4.2.l 事务的基本概念
4.2.2 事务对象的赋值
4. 2.3 同时操作多个数据库
4. 2.4 数据库事务地
4. 3 使用事务对象调用存储过程
4.4 嵌入SQL与数据库操作
4.4.1 SELECT查询语句
4.4.2 操作语句
4. 4.3 事务提交与撤消
4. 4. 4 使用游标的语句
4.4.5 利用存储过程进行查询的语句
4.4. 6 查询和更新Blob类型字段的语句
4. 4.7 动态 SQL语句
第5章 数据管道程序设计
5.l 概述
5.2 准备工作
5.2.l 建立Data Pipeline对象
5.2.2 建立相关的用户对象
5. 2. 3 建立Window对象
5. 3 数据管道操作及处理程序
5.3. 1 准备工作
5.3. 2 数据管道操作
5. 3.3 出错处理
第6章 灵活运用图形表现数据
6. 1 Graph控件简介
6.2 生成单一产品的销售走势图
6.2.l 界面设计
6.2. 2 建立DataWindow对象
6.2.3 编写程序代码
6.3 生成多个产品销售走势对比图
6. 4 动态改变图形的类型
第7章 窗口中几个控件的使用
7. 1 Tab标签控件
7. 1.l 术语及实例说明
7. 1.2 准备工作
7.1.3 建立Tab控件和选项卡
7.1.4 管理Tab控件及其选项卡
7. 1.5 写Tab控件的程序
7. 2 ListView控件
7.2.l 利用ListView控件进行查询
7. 2. 2 ListView控件的详细资料方式
7. 3 TreeView控件
7.3.l 用TreeView控件实现带层次的查询
7.3.2 TreeView控件应用技术
7. 4 轨迹条控件
7. 5 进度条控件
7.6 超级链接控件
第8章 Aich Text应用
8.1 RichTextEdit控件的使用
8.1.1 RichTextEdit控件的属性设置
8.1.2 RichTextEdit控件的文本
8.1.3 打开和保存文件的实例
8.2 RichTextEdit控件中的输入域
8.2.l 在文档中插入输入域
8.2.2 为输入域指定值
8.2.3 为日期和页码指定输入域
8.3 预览和打印
8.3.l 预览
8.3. 2 打印
8.4 使用数据库中的数据
8.5 RichText数据窗口
第9章 OLE技术及应用
9.1 OLE的基本概念
9.2 OLE控件和可插人的对象
9.2.l 建立和设置OLE控件
9.2.2 链接和嵌人
9.2.3 Offsite或In-place激活
9. 3 OLE定制控件
9.4 可编程的OLE对象
9.4. 1 OLEObject对象数据类型
9.4.2 OLE控件、OLE定制控件和OLEObject对象之间的赋值
9.4. 3 OLEObject的事件
9.5 OLE程序设计
9.5.l 自动操作接口
9.5.2 自动操作与Any数据类型
9. 6 Browser画板中的OLE信息
9.7 操作OLE对象的高级方法
9.7. 1 OLE存储的结构
9.7.2 存储和流的对象类型
9.7.3 打开和保存存储
9.7.4 建立和使用存储的例子
9.7.5 OLE流的概念和应用
9.7.6 使用存储的策略
第10章 PowerBuilder自动服务器
10.1 Automation Server的基本概念
10.2 用户对象作为自动服务器
10.2.1 建立作为服务器的类用户对象
10.2.2 建立对象的运行时库
10.2.3 注册用户对象
10.2.4 编写访问用户对象的客户端程序
10.3 使用PowerBuilder作为自动服务器
10.3. 1 建立要访问的用户对象
10.3.2 生成运行时库
10.3. 3 编写访问 PowerBuilder和用户对象的客户端程序
10.4 命名服务器的建立和使用
第11章 动态数据交换
11.l 动态数据交换的概念
11.2 动态数据交换的编程
11.2.1 DDE客户端程序设计
11.2.2 DDE服务器程序编程
11.2.3 DDE的事件和函数
11.3 动态数据交换应用实例
11.3.1 DDE服务器程序设计实例
11.3.2 DDE客户程序设计实例
11.4 使用Excel打印PowerBuilder的报表
第12章 几种常用编程技术
12.l 使用初始化文件和Windows注册表
12.1.l 使用初始化文件
12.1.2 使用Windows注册表
12. 2 处理Blob数据
12.2. 1 处理BIOb数据的SQL语句
12.2.2 利用Blob数据完成对图片或大文本的处理
12.2.3 数据窗口中的Blob列
12.3 动态链接库与外部函数的调用
12.3.l 说明外部函数
12. 3. 2 外部函数调用举例
12.4 嵌入由附应用
12.4. 1 与邮件应用相关的技术
12.4.2 邮件会话编程
12.5 与目录和文件操作有关的一组函数
12.5.1 目录管理函数
12. 5. 2 文件操作函数
12.5.3 文件管理函数
第13章 分布式应用概述
13.l 为什么要使用分布式应用技术
13.1.l 客户/服务器模式存在的问题
13.1.2 分布式计算提供的解决方案
13.2 EAServer
13.2.l 什么是 EAServer
13.2.2 EAServer服务器结构
13.2.3 EAServer客户结构
13.2.4 关于Jaguar CTS
13.3 微软事务服务器(MTS)
第14章 建立EAServer组件
14. 1 建立EAServer组件的方法
14.l.l 使用向导建立EAServer组件
14. 1.2 建立EAServer配置文件(Profile)
14.1.3 建立EAServer组件的步骤
14.1.4 建立EAServer组件的实例
14. 2 共享组件和服务组件
14.2.1 共享组件
14.2.2 服务组件
14.3 实例池(Instance Pooling)
14.3. 1 为什么使用实例池
14. 3.2 在向导的选项中定义实例池
14.3. 3 控制放入实例池中的实例状态
14. 3. 4 组件的生命周期
14. 4 对事务提供支持
14. 4.l 为什么使用EAServer事务支持
14. 4. 2 标明组件如何支持事务
14.4.3 使用事务服务内容对象(transaction service context object)
14. 4. 4 Automatic Demarcation/Deactivation(自动划分/解除)
14.4.5 提交和撤消
14.4.6 事务和组件的生命周期
14. 5 从EAServer组件访问数据库
14.5.1 概述
14.5.2 使用连接缓存(connection caching)
14.5.3 实现检索操作
14. 5.4 实现修改
14.5.5 传送结果集
14. 6 定义组件接口
14.6.l 说明接口
14. 6.2 接口中包含的内容
14.6. 3 方法的命名与方法的重载
14. 6. 4 数据类型
14.6.5 通过引用传送参数
14. 6.6 传递只读数据
14.6.7 传递对象
14.6.8 对空值提供支持
14.6.9 EAServer有效性
14.7 实施现存的接口
14.7. 1 选择接口
14.7.2 在向导中设置选项
14.7.3 在画板中编辑用户对象
14.7.4 插接组件到EAServer
14. 7.5 使用不同的工程
14.8 调用其他服务器的组件方法
14.9 存取组件属性
14. 10 测试和调试组件
14.10.l 活动编辑
14. 10.2 远程调试
14.10.3 写一些信息到EAServer日志中
第15章 建立EAServer客户端应用
15.l 建立EAServer客户端应用的方法
15.2 建立与EAServer服务器的连接
15.2.l 手工编写代码
15.2.2 使用向导创建Connection对象
15.3 生成EAServer代理(Proxy)对象
15.4 调用组件方法
15.4.l 调用EAServer服务器组件的方法
15.4.2 实现对n_stock_app组件上的方法businessdays进行调用
15.4. 3 清除代理对象实例
15.5 使用JaguarORB对象
15.5.l 概述
15.5.2 使用String_To_Object函数实例化代理对象
15.5.3 使用命名服务API实例化
15.6 划分到客户端和划分到组件的事务
15.6.1 两阶段提交
15.6.2 将组件标记为OTS类型
15.6.3 初始化 CORBACurrent对象
15.6.4 开始和结束事务
15.6.5 获取有关事务的信息
15.6.6 暂停和恢复事务
15.6.7 为事务设置超时(timeout)属性
15.7 请求从服务器返回信息
15.8 处理通信错误
15.8.l 概述
15.8.2 CORBA异常
15.8.3 编写Connection对象Error事件的程序
15.8.4 编写SystemError事件的程序
15.9 插接客户应用程序
第16章 建立COM或MTS组件
16.l 建立COM和 MTS组件概述
16.1.l 使用向导
16.1.2 开发步骤
16.2 组件对象模型
16.2.1 PowerBuilder的COM服务器
16.2.2 自动服务器和PB COM服务器
16.3 定义组件接口
16.3. 1 方法和数据类型
16.3. 2 编码时的限制
16.4 从COM和MTS组件访问数据库
16.4.l 传送结果集
16.4. 2 从客户端存取MTS组件的结果集
16.4.3 在PowerBuilder中使用ADO ResultSets
16.4. 4 从MTS组件中返回结果集
16.5 提供对事务的支持
16.6 为控制对象生存期提供支持
16.7 调用另一个服务器组件的方法
16.7. 1 使用OLEObject对象
16.7.2 使用TransactionServer对象
16.8 在日志文件中记录错误
16.9 安全问题
16.9.l 在Proect画板或向导中设定权限
16.9.2 标明安全
16.10 在 Project画板中建立COM和 MTS组件
16.10.1 使用Project画板建立COM服务器
16.10.2 自动注册组件
16.10.3 插接组件到MTS
16.10.4 选择定制或双接口
16.11 运行PowerBuilder的COM对象
16.12 插接PB COM服务器
16.12.1 使用带有可用COM应用程序的PB COM服务器
16.12.2 插接一个PB COM对象到MTS
16.12.3 插接文件到MTS服务器计算机
16.12. 4 导入PB COM对象到MTS
16.12.5 创建客户插接文件
16.12.6 安装客户插接文件
16.13 从客户端访问PB COM服务器
16.13. 1 VB作为客户
16.13.2 C+十作为客户
16.13.3 使用PB COM服务器和 DCOM对象
第17章 建立COMIMTS客户应用
17.l 建立 COM/MTS客户应用程序
17.2 连接到 COM服务器
17.3 与 COM组件交互
17. 3.l 调用组件方法
17.3.2 传送结果集
17.3. 3 处理执行错误
17. 4 从客户端控制事务