《PowerBuilder 9.0程序设计与开发技术大全》PDF下载

  • 购买积分:21 如何计算积分?
  • 作  者:求是科技编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2004
  • ISBN:7115126992
  • 页数:767 页
图书介绍:本书囊括了应用PowerBuilder 9.0进行程序开发的所有知识,并且通过大量实用而又有代表性的开发实例,向读者介绍和讲解如何使用 PowerBuilder 9.0中提供的工具和功能来实现所需要的系统功能。

第1章 PowerBuilder9.0概述 1

1.1PowerBuilder的发展历程 1

1.2PowerBuilder功能简介 1

1.2.1事件驱动的应用程序 1

1.2.2功能强大的开发技术 1

1.2.3面向对象编程 3

1.2.4强大的Web以及分布式开发能力 3

1.2.5对事务的支持 3

1.3PowerBuilder9.0的新功能 3

1.4本章小结 4

第2章 PowerBuilder9.0的开发环境 5

2.1安装和卸载PowerBuilder9.0 5

2.1.1安装PowerBuilder9.0 5

2.1.2卸载PowerBuilder 13

2.2集成开发环境 14

2.2.1运行PowerBuilder9.0 14

2.2.2菜单栏 16

2.2.3工作区 19

2.2.4工具栏 19

2.2.5画板 20

2.2.6获得帮助 20

2.3一个简单数据库应用程序示例 21

2.3.1快速生成一个应用程序 21

2.3.2创建数据窗口 23

2.3.3连接数据窗口 24

2.3.4运行应用程序 26

2.4本章小结 27

3.1.1标识符、注释、代词 28

第3章 PowerBuilder9.0编程基础 28

3.1PowerScript语言基础 28

3.1.2数据类型 29

3.1.3变量与常量 31

3.1.4数组 32

3.1.5运算符 33

3.1.6表达式 34

3.2控制结构 35

3.2.1条件分支结构 35

3.2.2循环结构 36

3.2.3返回和终止 38

3.3函数结构 39

3.3.1使用系统函数 39

3.3.2创建自定义函数(Fuction) 41

3.3.3函数调用 43

3.3.4函数的重载和超越 43

3.3.5结构的创建和使用 43

3.3.6常用函数 45

3.4使用SQL语句 47

3.4.1常用SQL语句 47

3.4.2SQL语句的执行结果检查 50

3.4.3游标的使用 51

3.4.4动态SQL语句 52

3.4.5SQL查询示例 56

3.5编程规范 60

4.2.2应用库 62

4.2.1应用对象 62

4.1应用对象概述 62

4.2应用对象和应用对象画板 62

第4章 应用对象和事务对象 62

4.2.3应用对象画板 63

4.3应用对象的事件 68

4.3.1Open(打开)事件 68

4.3.2Close(关闭)事件 69

4.3.3Idle(空闲)事件 69

4.3.4SystemError(系统出错)事件 69

4.3.5ConnectBegin(连接开始)事件 69

4.3.6ConnectEnd(连接结束)事件 70

4.3.7编写应用对象的事件 70

4.4使用代码编辑器 70

4.4.1代码编辑器 70

4.4.2编辑代码 71

4.4.3粘贴函数 72

4.4.4粘贴语句 73

4.4.5代码编辑器的键盘操作 73

4.5事务对象 74

4.5.1事务对象概述 74

4.5.2创建自定义事务对象 75

4.6本章小结 76

第5章 对象的属性、事件和函数 77

5.1公共对象函数 77

5.1.1ClassName() 77

5.1.2Drag() 77

5.1.3GetContextService() 78

5.1.5Hide() 79

5.1.4GetParent() 79

5.1.6Move() 80

5.1.7PointerX() 81

5.1.8PointerY() 81

5.1.9PostEvent() 81

5.1.10Print() 82

5.1.11Resize() 83

5.1.12SetFocus() 84

5.1.13SetPosition() 84

5.1.14SetRedraw() 85

5.1.15Show() 86

5.1.16TriggerEvent() 86

5.1.17TypeOf() 88

5.2.1应用对象的属性 89

5.2应用对象 89

5.2.2应用对象的事件 90

5.2.3应用对象的函数 90

5.3数组边界对象 92

5.3.1数组边界对象的属性 92

5.3.2数组边界对象的函数 92

5.4类定义对象 93

5.4.1类定义对象的属性 93

5.4.2类定义对象的函数 94

5.5上下文信息对象 95

5.5.1上下文信息对象的属性 95

5.5.2上下文信息对象的事件 95

5.5.3上下文信息对象的函数 96

5.6.1上下文关键字对象的属性 100

5.6.2上下文关键字对象的事件 100

5.6.3上下文关键字对象的函数 100

5.6上下文关键字对象 100

5.7C++对象 101

5.7.1C++对象的属性 101

5.7.2C++对象的事件 101

5.7.3C++对象的函数 102

5.8数据存储对象 102

5.8.1数据存储对象的属性 102

5.8.2数据存储对象的事件 102

5.8.3数据存储对象的函数 103

5.9子数据窗口对象 106

5.10.1动态描述区对象的属性 109

5.10动态描述区对象 109

5.10.2动态描述区对象的事件 110

5.10.3动态描述区对象的函数 110

5.11DynamicStagingArea对象 115

5.11.1DynamicStagingArea对象的事件 115

5.11.2DynamicStagingArea对象的函数 115

5.12枚举定义对象 115

5.12.1枚举定义对象的属性 115

5.12.2枚举定义对象的函数 116

5.13枚举项定义对象 116

5.13.1枚举项定义对象的属性 116

5.14.2环境对象的函数 117

5.14.1环境对象的属性 117

5.14环境对象 117

5.13.2枚举项定义对象的函数 117

5.15出错对象 118

5.15.1出错对象的属性 118

5.15.2出错对象的事件 118

5.15.3出错对象的函数 118

5.16grAxis对象 119

5.16.1grAxis对象的属性 119

5.16.2grAxis对象的函数 120

5.17grDispAttr对象 120

5.17.1grDispAttr对象的属性 121

5.17.2grDispAttr对象的函数 121

5.18.2Inet对象的事件 122

5.18.3Inet对象的函数 122

5.18.1Inet对象的属性 122

5.18Inet对象 122

5.19InternetResult对象 124

5.19.1InternetResult对象的属性 124

5.19.2InternetResult对象的事件 124

5.19.3InternetResult对象的函数 125

5.20ListViewItem对象 125

5.20.1ListViewItem对象的属性 125

5.20.2ListViewItem对象的函数 126

5.21mailFileDescription对象 126

5.21.1mailFileDescription对象的属性 126

5.21.2mailFileDescription对象的函数 126

5.22.2邮件消息对象的函数 127

5.22.1邮件消息对象的属性 127

5.22邮件消息对象 127

5.23邮件接收者对象 128

5.23.1邮件接收者对象的属性 128

5.23.2邮件接收者对象的函数 128

5.24邮件会话对象 128

5.24.1邮件会话对象的属性 128

5.24.2邮件会话对象的事件 128

5.24.3邮件会话对象的函数 129

5.25MDIClient对象 138

5.25.1MDIClient对象的属性 139

5.25.2MDIClient对象的函数 139

5.26菜单对象 139

5.26.2菜单对象的事件 140

5.26.1菜单对象的属性 140

5.26.3菜单对象的函数 141

5.27MenuCascade对象 144

5.27.1MenuCascade对象的属性 144

5.27.2MenuCascade对象的事件 145

5.27.3MenuCascade对象的函数 145

5.28消息对象 146

5.28.1消息对象的属性 146

5.28.2消息对象的事件 146

5.28.3消息对象的函数 147

5.29本章小结 147

6.1.2弹出式窗体(PopupWindow) 148

6.1.1主窗体(MainWindow) 148

6.1窗体概述 148

第6章 窗体与菜单 148

6.1.3子窗体(ChildWindow) 149

6.1.4响应窗体(ResponseWindow) 149

6.1.5MDI框架窗体和带微帮助的MDI框架窗体 149

6.2窗体操作 149

6.2.1窗体画板概述 149

6.2.2创建新窗体 150

6.2.3创建继承窗体 151

6.2.4设计窗体属性 152

6.2.5保存、预览、打印窗体 155

6.3窗体事件和函数 156

6.3.1窗体事件 156

6.3.2窗体函数 158

6.4窗体变量和窗体数组 161

6.4.1窗体变量 161

6.4.2窗体数组 161

6.5制作身份验证窗体实例 162

6.5.1在数据库中创建管理员信息表 162

6.5.2建立窗体 162

6.5.3设置、排列各个控件 163

6.5.4编写窗体和各个控件的事件脚本 164

6.6菜单概述 165

6.7菜单操作 167

6.7.1创建新菜单 167

6.7.2修改菜单 168

6.7.3设置菜单属性 170

6.9制作弹出式菜单 172

6.8.2编写菜单事件处理程序 172

6.9.1弹出窗体上的菜单 172

6.8.1菜单事件触发时机 172

6.8菜单事件 172

6.9.2弹出其他菜单 173

6.10本章小结 173

第7章 控件 174

7.1控件概述 174

7.1.1控件的命名 175

7.1.2控件的基本操作 177

7.1.3控件的焦点与Tab次序 181

7.1.4控件的标题和访问键 183

7.2按钮控件 185

7.2.1命令按钮 185

7.3显示与编辑文本 186

7.2.2图形按钮 186

7.3.1静态文本(StaticText)控件 187

7.3.2单行编辑框(SingleLineEdit) 187

7.3.3多行编辑框(MultiLineEdit) 188

7.3.4掩码编辑框(EditMask) 189

7.3.5超文本编辑框(RichTextEdit) 190

7.4单选钮、复选框与组框 191

7.4.1单选钮(RadioButton) 191

7.4.2复选框(CheckBox) 192

7.4.3组框(GroupBox) 193

7.5列表选择 194

7.5.1列表框(ListBox) 194

7.5.2图片列表框(PictureListBox) 196

7.5.3下拉列表框(DropDownListBox) 197

7.6显示图像 198

7.5.4下拉图片列表框 198

7.7使用树形视图控件 200

7.7.1属性 201

7.7.2添加与删除列表项 202

7.7.3事件 205

7.8使用列表视图控件 206

7.8.1列表视图的属性 206

7.8.2增加与删除列表项 208

7.8.3事件 211

7.9使用标签控件 212

7.9.1相关概念 212

7.9.2建立标签控件 212

7.9.3属性 214

7.9.4事件 217

7.10.1放入OLE控件 218

7.10集成其他应用 218

7.10.2设置OLE控件 220

7.10.3激活OLE对象的方法 221

7.10.4使用BLOB类型 222

7.10.5访问Excel数据 223

7.10.6访问Word数据 226

7.11本章小结 229

第8章 报表 230

8.1报表概述 230

8.1.1选择表现风格和数据源 230

8.1.2设置结果集和修改属性 231

8.1.3在服务器和客户机间共享 232

8.1.5数据窗口画板选项 233

8.1.4数据窗口和报表区 233

8.2打印报表 234

8.2.1控制打印规范 234

8.2.2与打印相关的函数 235

8.2.3与打印相关的事件 236

8.3制作打印报表单 237

8.3.1数据窗口数据项的选择与设置 237

8.3.2调整控件大小 237

8.3.3利用系统控件强化报表的统计显示功能 238

8.4选择并打印报表 239

8.4.1建立数据窗口 240

8.4.2建立窗体 241

8.4.4编写控件脚本 242

8.4.3设置控件及其属性 242

第9章 程序调试与发布 244

9.1程序调试 244

9.1.1查看脚本窗口 244

9.1.2资源浏览窗口 244

9.1.3查看变量窗口 244

9.1.4断点查看窗口 245

9.2断点操作 245

9.2.1调试应用程序的切换 245

9.2.2设置断点 246

9.3调试方法 248

9.3.1调试的开始、继续和停止 248

9.3.2其他调试方法 248

9.4.2查看其他信息 249

9.4.1查看各种变量值 249

9.4查看信息 249

9.4.3运行错误解释 251

9.5发布应用程序 252

9.5.1概述 252

9.5.2建立工程对象 253

9.5.3编译生成各类对象 254

9.5.4编译生成可执行应用程序 254

9.6制作安装盘 259

9.6.1找出软件发布的所有必需文件 259

9.6.2确保软件的目录结构同软件一致 259

9.6.3在注册表里的设置 259

9.6.4确定要生成的程序包的名字和目标 260

9.7本章小结 260

10.1.1生成应用程序需要的DLL文件 261

10.1.2应用程序脱离开发环境运行 261

第10章 应用程序开发常见问题与技巧 261

10.1环境配置 261

10.1.3安装AdaptiveServerAnywhere后如何创建数据库 262

10.1.4在File菜单中显示CreateDatabase选项 262

10.1.5编程优化数据库查询 262

10.1.6动态调用函数 264

10.1.7对应用程序进行代码维护 265

10.2窗体与菜单设计 268

10.2.1创建图标栏应用 268

10.2.2创建美观的状态条 270

10.2.3在Response窗口中使用Menu 270

10.2.6将可视控件放置于其他的控件上 271

10.2.5捕获控制菜单中的Close事件 271

10.2.4移动窗口中的控件 271

10.2.7实现动态显示控件 272

10.2.8动态创建可视控件 272

10.2.9使用多窗口实例 273

10.2.10在实例窗口中引用控件 274

10.2.11向窗口传递多个参数 275

10.2.12设计实时帮助条 275

10.2.13实现“跑马灯” 276

10.2.14实现右键菜单 276

10.3事务管理 276

10.3.1如何设置数据窗口控件的事务对象 276

10.3.2进行内部事务管理 277

10.3.3使用一个独立的事务对象进行事务管理 278

10.3.4为数据库连接参数赋值 279

10.3.5用数据库的事务管理指令实现完全控制 281

10.3.6消除内存漏洞 281

10.3.7进行数据访问 281

10.3.8同时连到多个RDBMS 282

10.3.9使用事务对象进行数据库检索和更新 282

10.4操作OCX控件 283

10.4.1在PowerBuilder中实现对有关串口的编程 283

10.4.2在PowerBuilder中使用OCX控件 284

10.4.3实现动态的Splash封面文件 285

10.4.4用PowerBuilder开发多媒体播放器 286

10.4.5利用OCX控件制作状态条 287

10.4.6利用OCX控件制作日历 288

10.4.7利用OCX控件制作动态按钮或动态图片 288

10.5.2调用Windows的输入法 289

10.5控制应用程序 289

10.5.1触发另一个应用程序中用户事件 289

10.5.3使用游标 290

10.5.4用PowerBuilder调用Windows的API函数 291

10.5.5调用API函数从串口通信中获取程控交换机计费数据 291

10.5.6调用外部程序及判断其完成 293

10.5.7播放声音文件 294

10.5.8动态监控资源 295

10.5.9控制由Run运行的程序 296

10.5.10只运行一次应用程序 297

10.5.11在应用程序中启动控制面板 297

10.6操作Windows系统 298

10.6.1利用API函数建立Windows风格的About对话框 298

10.5.12在循环中途实现退出 298

10.6.2在程序中切换中英文输入法 299

10.6.3获取驱动器类型 299

10.6.4获取键盘类型 300

10.6.5获取硬盘容量 300

10.6.6制作闪动标题栏 300

10.6.7获取用户登记标识ID 301

10.6.8将指定的窗口带至窗口列表顶部 301

10.6.9取得驱动器的卷标 302

10.6.10调用HTML格式的帮助文件 302

10.6.11关闭/打开DOS窗口 303

10.6.12获得Windows系统目录 303

10.6.13利用左右键及回车键转移列的焦点 304

10.6.14使PowerBuilder窗口总在最上层 304

10.6.15隐藏/显示Windows的任务栏 305

10.6.16把长文件名转换为短文件名 306

10.6.17获取目录信息 306

10.7本章小结 308

第11章 数据库管理基础 309

11.1数据库的基本概念 309

11.1.1列(Column) 309

11.1.2行(Row) 309

11.1.3数据类型(Type) 309

11.1.4主键(PrimaryKey) 310

11.1.5外键(ForeignKey) 310

11.2PowerBulider的数据库接口 310

11.2.1标准数据库接口 310

11.3.1数据库画板窗口 311

11.3数据库画板 311

11.2.2专用数据库接口 311

11.3.2数据库画板功能 312

11.3.3修改数据库选项 313

11.4创建和删除数据库 313

11.4.1创建数据库 314

11.4.2删除数据库 314

11.5操作数据库表 315

11.5.1表的创建与删除 315

11.5.2定义表的属性、列的属性和扩展属性 316

11.5.3表的索引 318

11.5.4表的主键、外键 318

11.5.5操作数据 320

11.6本章小结 321

12.1数据窗口设计 322

第12章 数据窗口设计 322

12.2.1列表(Tabular) 325

12.2数据窗口显示 325

12.2.2交叉列表(Crosstab) 326

12.2.3自由格式(Freeform) 326

12.2.4统计图(Graph) 326

12.2.5表格(Grid) 327

12.2.6分组(Group) 327

12.2.7标签(Label) 327

12.2.11复合(Composite) 328

12.3数据窗口数据源 328

12.3.1QuickSelect数据源 328

12.2.10超文本(RichText) 328

12.2.9外部文本(OLE2.0) 328

12.2.8分栏(N-Up) 328

12.3.2SQLSelect数据源 329

12.3.3Query数据源 329

12.3.4External数据源 330

12.3.5StoredProcedure数据源 331

12.4操作数据窗口对象 332

12.4.1划分区域 332

12.4.2添加和删除列 332

12.4.3计算字段 333

12.4.4过滤数据 335

12.4.5数据排序 336

12.4.6指定检索数据方式 337

12.4.7增加数据窗口数据 337

12.5.1数据窗口控件的属性 341

12.5数据窗口控件的属性、事件和函数 341

12.5.2数据窗口控件的事件 342

12.5.3数据窗口控件的常用函数 344

12.6本章小结 347

第13章 数据窗口事件 348

13.1连接数据库 348

13.2数据窗口画板 349

13.2.1设计视图 349

13.2.2属性视图 350

13.2.3控件列表视图 350

13.2.4预览视图 351

13.2.6列定义视图 352

13.2.5数据视图 352

13.3使用事务对象 353

13.3.1事务对象概念及属性 353

13.3.2操作事务对象 353

13.3.3全局事务对象——SQLCA 354

13.4读取数据窗口缓冲区内容 357

13.4.1数据窗口缓冲区 357

13.4.2在数据窗口控件中读取数据 360

13.4.3利用数据列更新事件实现数据库修改 363

13.5存取数据窗口对象的属性 369

13.5.1数据窗口对象属性 369

13.5.2使用函数存取对象属性 369

13.6.1共享概述 370

13.6.2共享条件 370

13.5.3使用表达式存取对象属性 370

13.6共享数据窗口缓冲区 370

13.6.3数据共享应用 371

13.6.4数据窗口函数对共享的影响 371

13.7本章小结 372

第14章 连接数据库 373

14.1概述 373

14.1.1软件安装 373

14.1.2连接到ODBC数据库 374

14.1.3专用接口的一般连接步骤 376

14.2使用数据库维护画板 378

14.2.1编写和执行SQL语句 378

14.3PowerBuilder资源库 379

14.4创建与编辑显示格式 379

14.2.2保存与读入SQL语句 379

14.4.1数值型显示格式 380

14.4.2字符串显示格式 381

14.4.3日期显示格式 382

14.4.4时间显示格式 383

14.5创建编辑风格 383

14.5.1编辑框风格(EditBox) 384

14.5.2编辑掩码风格(EditMask) 385

14.5.3复选框风格(CheckBox) 385

14.5.4单选钮风格(RadioButton) 385

14.5.5下拉列表框风格(DropDownListBox) 386

14.5.6下拉数据窗口风格(DropDownDataWindow) 386

14.6创建有效性规则 386

14.7数据库配置连接 388

14.7.2数据库设计 389

14.7.3配置数据库并连接 389

14.7.1选择数据库管理系统 389

14.8本章小结 394

第15章 数据窗口控件的属性、事件和函数 395

15.1数据窗口控件的属性 395

15.2数据窗口控件的事件 396

15.3数据窗口控件的函数 398

15.3.1AcceptText() 402

153.2CanUndo() 403

15.3.3CategoryCount() 403

15.3.4CategoryName() 404

15.3.5Clear() 404

15.3.8Copy() 405

15.3.7Clipboard() 405

15.3.6ClearValues() 405

15.3.9CopyRTF() 406

15.3.10Create() 406

15.3.11CrosstabDialog() 408

153.12Cut() 409

15.3.13DataCount() 409

15.3.14DBCancel() 410

15.3.15DBErrorCode() 411

15.3.16DBErrorMessage() 411

15.3.17DeletedCount() 411

15.3.18DeleteRow() 411

15.3.19Describe() 412

15.3.20Filter() 415

15.3.22Find() 416

15.3.21FilteredCount() 416

15.3.23FindCategory() 418

15.3.24FindGroupChange() 418

15.3.25FindNext() 419

15.3.26FindRequired() 419

15.3.27FindSeries() 420

15.3.28GenerateHTMLForm() 420

15.3.29GetBandAtPointer() 421

15.3.30GetBorderStyle() 422

15.3.31GetChild() 423

15.3.32GetClickedColumn() 424

15.3.33GetColumn() 424

15.3.34GetColumnName() 425

15.3.35GetData() 425

15.3.37GetDataStyle() 426

15.3.36GetDataPieExplode() 426

15.3.38GetDataValue() 429

15.3.39GetFormat() 430

15.340GetItemDate() 430

15.3.41GetItemDateTime() 432

15.3.42GetItemDecimal() 433

15.3.43GetItemNumber() 434

15.3.44GetItemStatus() 436

15.3.45GetItemString() 437

15.3.46GetItemTime() 438

15.3.47GetMessageText() 439

15.3.48GetNextModified() 439

15.3.49GetObjectAtPointer() 440

15.3.51GetSelectedRow() 441

15.3.50GetRow() 441

15.3.52GetSeriesStyle() 442

15.3.53GetSQLPreview() 444

15.3.54GetSQLSelect() 445

15.3.55GetText() 445

15.3.56GetTrans() 446

15.3.57GetUpdateStatus() 447

15.3.58GetValidate() 447

15.3.59GetValue() 447

15.3.60GroupCalc() 448

15.3.61ImportClipboard() 449

15.3.62ImportFile() 449

15.3.63ImportString() 450

15.3.64InsertDocument() 451

15.3.65InsertRow() 452

15.3.66IsSelected() 452

15.3.67LineCount() 453

15.3.68ModifiedCount() 454

15.3.69Modify() 454

15.3.70ObjectAtPointer() 462

15.3.71OLEActivate() 463

15.3.72Paste() 464

15.3.73PasteRTF() 464

15.3.74Position() 464

15.3.75Print() 465

15.3.77ReplaceText() 467

15.3.78ReselectRow() 467

15.3.76PrintCancel() 467

15.3.79Reset() 468

15.3.80ResetDataColors() 469

15.3.81ResetTransObject() 469

15.3.82ResetUpdate() 470

15.3.83Retrieve() 470

15.3.84RowCount() 472

15.3.85RowsCopy() 473

15.3.86RowsDiscard() 474

15.3.87RowsMove() 475

15.3.88SaveAs() 476

15.3.89Scroll() 478

15.3.90ScrollNextPage() 478

15.3.92ScrollPriorPage() 479

15.3.91ScrollNextRow() 479

15.3.93ScrollPriorRow() 480

15.3.94ScrollToRow() 480

15.3.95SelectedLength() 481

15.3.96SelectedLine() 481

15.3.97SelectedStart() 481

15.3.98SelectedText() 482

15.3.99SelectRow() 482

15.3.100SelectText() 483

15.3.101SelectTextAll() 484

15.3.102SelectTextLine() 484

15.3.103SelectTextWord() 484

15.3.104SeriesCount() 484

15.3.107SetBorderStyle() 485

15.3.106SetActionCode() 485

15.3.105SeriesName() 485

15.3.108SetColumn() 486

15.3.109SetDataPieExplode() 487

15.3.110SetDataStyle() 487

15.3.111SetDetailHeight() 489

15.3.112SetFilter() 490

15.3.113SetFormat() 491

15.3.114SetItem() 492

15.3.115SetItemStatus() 492

15.3.116SetRow() 494

15.3.117SetRowFocusIndicator() 494

15.3.118SetSeriesStyle() 495

15.3.119SetSort() 497

15.3.120SetSQLPreview() 498

15.3.121SetSQLSelect() 499

15.3.122SetTabOrder() 500

15.3.123SetText() 500

15.3.124SetTrans() 501

15.3.125SetTransObject() 502

15.3.126SetValidate() 504

15.3.127SetValue() 505

15.3.128ShareData() 506

15.3.129ShareDataOff() 508

15.3.130ShowHeadFoot() 508

15.3.131Sort() 509

15.3.132TextLine() 509

15.3.134Update() 510

15.3.133Undo() 510

15.4本章小结 511

第16章 数据窗口对象的属性、方法和函数 512

16.1数据窗口对象的属性 512

16.1.1位图(Bitmap)对象的属性 512

16.1.2按钮(Button)对象的属性 513

16.1.3列(Column)对象的属性 514

16.1.4计算域(Computedfield)对象的属性 518

16.1.5DataWindow对象的属性 520

16.1.6组框(GroupBox)对象的属性 524

16.1.7直线(Line)对象的属性 525

16.1.8椭圆(Oval)、矩形(Rectangle)、圆角矩形(RoundRectangle)对象的属性 526

16.1.9报表(Report)对象的属性 526

16.1.10表(TableBlob)对象的属性 527

16.1.11文本(Text)对象的属性 528

16.2数据窗口对象属性的访问方法 529

16.2.1数据窗口属性表达式 529

16.2.2数据窗口画板表达式 531

16.2.3数据窗口对象属性的取值及其类型 532

16.2.4数据窗口对象属性表达式的出错处理 532

16.3数据窗口画板函数 533

16.3.1聚合函数 533

16.3.2数据类型检查与转换函数 546

16.3.3数据窗口信息函数 550

16.3.4日期、时间函数 554

16.3.5数值运算函数 560

16.3.6字符串操作函数 560

16.3.7交叉表函数 561

16.3.8其他画板函数 563

16.4本章小结 564

第17章 数据管道 565

17.1数据管道概述 565

17.2创建对象 565

17.2.1创建管道对象 565

17.2.2创建支撑用户对象 567

17.2.3创建窗口 568

17.3初始化操作 568

17.4启动数据管道 569

17.4.1启动管道 569

17.4.2显示管道操作的统计数据 569

17.4.4向数据库提交更新操作 570

17.4.3终止管道运行 570

17.5处理行错误 571

17.5.1使用管道错误数据窗口 571

17.5.2修复错误行 571

17.5.3放弃错误行 571

17.6结束操作 572

17.7数据库之间的数据传递 572

17.8派生数据管道子对象 575

17.9系统集成 578

17.10本章小结 581

第18章 数据存储与图表处理 582

18.1数据存储 582

18.1.1数据存储概述 582

18.1.2使用数据存储 583

18.1.3使用定制的数据存储对象 584

18.1.4在数据存储中存取并操纵数据 586

18.1.5信息共享 587

18.2使用图表 588

18.2.1改变图表属性 589

18.2.2访问数据属性 590

18.2.3ObjectAtPointer函数 592

18.2.4使用图表控件 593

18.3绘制图形 595

18.3.1绘制基于DataWindow的图形 595

18.3.2绘制基于Windows.SDK的图形 597

18.3.3绘制基于图形组件的图形 601

18.4本章小结 603

第19章 数据库开发常见问题与技巧 604

19.1数据窗口设计 604

19.1.1在数据窗口中任意角度显示文本 604

19.1.2在数据窗口中调整列顺序 604

19.1.3使数据窗口中的被选中行具有更好的外观 604

19.1.4在DataWindow中多行显示Footer 605

19.1.5单击数据窗口的列时标题的边框由3Draise改为3Dlower 605

19.1.6在程序中为数据窗口添加计算域或line 606

19.1.7高亮显示分组条 606

19.1.8在程序中随意修改数据窗口对象的各个带区、标题或格式等 606

19.1.9在改变列的字体颜色时提醒用户此列已做修改 607

19.1.10用PowerBuilder数据窗口特征制作进度条 607

19.1.12动态地改变数据窗口中的图形样式 609

19.1.13在数据窗口中调出定时器实现动画 609

19.1.11美化数据窗口的显示效果 609

19.1.14刷新下拉式数据窗口 610

19.1.15实现在下拉列表控件中增加数据窗口中header部分的内容 610

19.1.16在数据窗口中直接嵌入数据 611

19.1.17在选择下拉数据窗口后动态保存 611

19.1.18取得一个嵌套的数据窗口句柄 611

19.1.19取得数据窗口中下拉数据窗口的显示值 611

19.1.20实现图片按钮的Mousemove事件 612

19.1.21表的定义发生改变后同步数据窗口列 612

19.1.22在一个数据窗口中修改多个表 613

19.1.23在数据窗口中限定某列不可编辑 614

19.1.26检测数据窗口中数据是否被修改 615

19.1.25在数据窗口中快速删除多行 615

19.1.24在窗口退出时检测数据是否被修改 615

19.1.27构造数据窗口源代码 616

19.1.28创建一个动态的数据窗口对象 616

19.1.29数据窗口如何自动匹配多个Retrieve参数 617

19.1.30动态改变Grid数据窗口的字段显示顺序 618

19.1.31终止Retreive 619

19.1.32使用querymode 619

19.1.33得到Crosstab中的列名 620

19.1.34在PowerBuilder的数据窗口中捕捉dropdowndw列的上下键事件 621

19.1.35给Grid样式添加一标题 622

19.1.36在数据窗口中用左箭头实现shift+tab 622

19.1.39设置数据窗口Boolean型属性 623

19.1.40解决“双消息框”问题 623

19.1.37设置数据窗口自动折行 623

19.1.38使可编辑的数据窗口只读 623

19.1.41编写行选择函数 624

19.1.42生成可重用的数据窗口 627

19.2配置连接数据库 629

19.2.1将运行后的SQLAnywhere7.0的窗口放到状态栏右下方的输入法旁边 629

19.2.2备份和恢复Sybase和MSSQLServer数据库 629

19.2.3PowerBuilder连接SybaseSQLServer时需要注意的问题 631

19.2.4在PowerBuilder中向Excel传递数据 632

19.2.5PowerBuilder中实现对Excel的操作 634

19.2.6使用PowerBuilder同时访问多个数据库 635

19.3数据窗口打印操作 636

19.3.1分页打印数据窗口 636

19.3.2在数据窗口每页打印固定行 636

19.3.5将数据窗口打印到文件中 637

19.3.6动态实现打印不固定的数据列 637

19.3.3使能控件在数据窗体中显示但不打印 637

19.3.4在嵌套报表类型中实现连续页号打印多个数据窗口 637

19.4使用OLE控件 638

19.4.1PowerBuilder与外界有的交互方式 638

19.4.2在应用程序中放置一个OLE控件 640

19.4.3设置OLE控件的属性 642

19.4.4激活OLE对象 643

19.4.5在PowerBuilder数据窗口中实现OLE 644

19.5本章小结 645

第20章 高级窗体设计 646

20.1主窗体菜单 646

20.1.1制作菜单 646

20.1.2建立主窗体并加载菜单 647

20.2.1MDI窗口 648

20.2MDI应用程序设计 648

20.2.2建立MDI窗口 650

20.2.3在MDI窗口中打开工作窗口 650

20.2.4MDI窗口示例 652

20.3Tab标签设计 654

20.3.1Tab标签概述 654

20.3.2定义并管理标签页 655

20.3.3定制标签控件 656

20.3.4设计自动缩放窗口控件 658

20.4使用TreeView技术 666

20.4.1TreeView概述 666

20.4.2生成TreeView项 668

20.4.3管理TreeView项 670

20.4.4管理TreeView图标 672

20.4.5利用数据窗口生成TreeView 673

20.4.6设计Treeview 673

20.5本章小结 678

第21章 用户对象和用户事件 679

21.1用户对象概述 679

21.1.1面向对象编程 679

21.1.2用户对象的分类 680

21.2创建用户对象 682

21.2.1创建标准可视用户对象 682

21.2.2创建定制可视用户对象 684

21.2.3创建外部可视用户对象 685

21.2.4创建定制类用户对象 686

21.2.5创建标准类用户对象 687

21.2.6继承创建 688

21.3.1插入不可视用户对象 689

21.3定制用户对象 689

21.3.2插入结构 691

21.3.3插入函数 691

21.3.4插入事件 694

21.4使用用户对象 694

21.4.1使用可视用户对象 694

21.4.2使用类用户对象 696

21.5窗口与用户对象间的通信 701

21.5.1直接引用用户对象属性 701

21.5.2使用函数 702

21.5.3使用用户事件 703

21.6使用用户对象制作通用对话框 704

21.6.3建立客户类 705

21.6.1建立应用 705

21.6.2建立函数 705

21.6.4建立窗体 712

21.6.5设置控件及其属性 712

21.6.6编写窗体和各个控件的脚本 712

21.7本章小结 715

第22章 管理库文件 716

22.1库文件概述 716

22.1.1库文件 716

22.1.2库画板 717

22.2管理PBL库 719

22.2.1创建和删除库 719

22.2.2创建动态库 720

22.2.4设置搜索路径 721

22.2.3优化库文件 721

22.2.5重建与移植库 723

22.3操作库与维护库及其对象 723

22.3.1打开和预览对象 723

22.3.2复制、移动、粘贴和删除对象 723

22.3.3搜索目标程序、库和对象 724

22.3.4导入和导出对象 725

22.3.5生成库内容报告 726

22.4根据已有的库文件创建目标 727

22.5本章小结 729

第23章 PowerBuilder的Internet开发 730

23.1PowerBuilder9.0的Internet特性 730

23.1.1DataWindow插件 730

23.1.4从数据窗口到HTML 731

23.1.3WindowActiveX插件 731

23.1.2Window插件 731

23.2PowerBuilder的邮件功能 732

23.2.1MailSession对象 733

23.2.2MailMessage对象 733

23.2.3MailAddess()函数 733

23.2.4MailDeleteMessage()函数 734

23.2.5MailGetMessages()函数 734

23.2.6MailHandle()函数 735

23.2.7MailLogOn()函数 735

23.2.8MailLogOff()函数 736

23.2.9MailRecipientDetails()函数 736

23.2.10MailReadMessage()函数 736

23.2.11MailResolveRecipient()函数 737

23.3在IE中显示PowerBuilder报表 738

23.2.12MailSaveMessage()函数 738

23.2.13MailSend()函数 738

23.3.1编程思路 739

23.3.2编程步骤 739

23.4在IE中显示PowerBuilder的Child类型的窗口对象 744

23.5使用WindowActiveX显示PowerBuilder窗口对象 750

23.6本章小结 753

第24章 PowerBuilder自动服务器 754

24.1自动化服务器概述 754

24.2使用用户对象作为自动化服务器 755

24.2.1创建类用户对象 755

24.2.2建立对象的运行库 755

24.2.4编写客户代码 756

24.2.3注册对象 756

24.3PowerBuider作为自动化服务器 757

24.3.1定义所需访问的对象 757

24.3.2生成运行库 758

24.3.3编写客户代码 758

24.4创建并使用命名服务器 760

24.5通过自动化访问远程对象 761

24.6用户对象及注册表 762

24.6.1GUID、CLSID和ProgID标识 762

24.6.2对象信息存储地点 762

24.6.3创建注册信息 764

24.6.4分发自动化服务器应用 765

24.6.5PowerBuilder.Application服务器对象 766

24.7本章小结 767