第一部分 背景与基础知识 3
第1章 Kylix基本知识 3
1.1 Kylix发布的背景及意义 4
1.2 Kylix产品分类 5
1.3 Kylix功能与特点 6
1.4 Kylix与Delphi 10
1.5 小结 11
第2章 Object Pascal语言 13
2.1 常量 14
2.1.1 真实常量 14
2.1.2 类型常量 15
2.2 变量 17
2.2.1 初始化变量 18
2.2.2 动态变量 18
2.2.3 线程变量 18
2.3 数据类型 19
2.3.1 简单类型 20
2.3.2 字符串类型 24
2.3.3 结构类型 25
2.3.4 指针类型 30
2.3.5 过程类型 31
2.3.6 Variant类型 32
2.4.1 表达式 33
2.4 表达式与运算符 33
2.4.2 运算符 34
2.5 Object Pascal语句 38
2.5.1 赋值语句 38
2.5.2 函数与过程调用语句 39
2.5.3 goto语句 39
2.5.4 复合语句 39
2.5.5 with语句 40
2.5.6 条件语句 41
2.5.7 case语句 42
2.5.8 循环语句 43
2.6.1 过程与函数的声明 45
2.6 过程与函数 45
2.6.2 过程与函数的调用 47
2.6.3 调用习惯 48
2.7 类与对象 48
2.7.1 类类型(class types) 49
2.7.2 域 50
2.7.3 方法 51
2.7.4 类引用类型(class-reference type) 54
2.7.5 接口类型(interfacetypes) 54
2.8.1 程序结构及语法 55
2.8 程序与单元 55
2.8.2 单元结构及语法 56
2.8.3 简单程序示例 57
2.9 小结 61
第二部分 Kylix快速入门 65
第3章 Kylix安装与卸载 65
3.1 安装前准备 66
3.1.1 硬件环境需求 66
3.1.2 软件环境需求 66
3.1.3 问题的解决 67
3.2.1 安装身份 69
3.2 正式安装 69
3.2.2 Kylix安装程序 70
3.2.3 安装步骤 70
3.2.4 产品激活与注册 71
3.3 Kylix产品升级 71
3.4 卸载 71
3.5 小结 71
第4章 Kylix集成开发环境 73
4.1 主窗口 75
4.2 菜单 75
4.2.1 File菜单 75
4.2.2 Edit菜单 77
4.2.3 Search菜单 80
4.2.4 View菜单 81
4.2.5 Project菜单 82
4.2.6 Run菜单 84
4.2.7 Component菜单 86
4.2.8 Tools菜单 87
4.2.9 Help菜单 88
4.3 工具栏 88
4.3.1 标准工具栏 89
4.3.2 显示工具栏 89
4.3.3 桌面工具栏 90
4.3.4 调试工具栏 91
4.3.5 Internet工具栏 91
4.3.6 定制工具栏 92
4.4 组件板 93
4.4.1 使用组件板 93
4.4.2 框架 94
4.4.3 定制组件板 94
4.5 代码编辑器 96
4.5.1 代码编辑器快捷菜单 97
4.5.2 使用代码编辑器浏览代码 99
4.5.3 在代码编辑器中获取帮助 99
4.5.4 查看并编辑窗体代码 100
4.5.5 定制代码编辑器 101
4.6 代码浏览器 102
4.6.1 使用代码浏览器 102
4.6.2 定制代码浏览器 102
4.7 项目管理器 103
4.8 项目浏览器 104
4.9 对象观察器 104
4.10 窗体设计器 105
4.11 对象库 107
4.11.1 将对象库的项添加到项目 107
4.11.3 指定用户模板为默认模板 108
4.11.2 将模板添加到对象库 108
4.12 小结 110
第5章 Kylix快速应用 111
5.1 Kylix应用程序开发步骤 112
5.1.1 创建/打开Project 112
5.1.2 设计用户界面 112
5.1.3 编写代码 114
5.1.4 编译、调试与运行项目 115
5.1.5 制作发行版本 115
5.2.1 开始一个新的应用程序 117
5.2.2 分析用户界面需求 117
5.2 快速应用程序开发实例 117
5.2.3 创建文本编辑区域 118
5.2.4 添加菜单及工具栏支撑组件 120
5.2.5 添加菜单 126
5.2.6 添加工具栏 128
5.2.7 编写事件句柄 129
5.2.8 创建一个About对话框 135
5.2.9 完善并运行应用程序 137
5.3 小结 138
第三部分 Kylix数据库应用开发 141
第6章 Kylix数据库应用开发入门 141
6.2.1 数据库类型 142
6.1 数据库应用开发基本步骤 142
6.2 Kylix数据库应用结构设计 142
6.2.2 数据库应用结构 143
6.3 常用数据库应用开发组件 148
6.4 制作数据库应用发行版本 151
6.5 一个简单的数据库应用开发实例 152
6.5.1 开始一个新的应用 153
6.5.2 设置窗体属性值 153
6.5.3 分析用户界面需求 153
6.5.4 添加ClientDataSet与DataSource组件 153
6.5.5 创建数据库表记录显示区域 154
6.5.6 创建一组数据库浏览按钮 155
6.5.7 创建MEMO字段信息显示区域 156
6.5.8 创建GRAPHIC字段信息显示区域 159
6.5.9 创建应用程序关闭按钮 162
6.5.10 运行应用程序 162
6.6 小结 163
第7章 理解与使用数据集 165
7.1 数据集的类型 166
7.2 打开与关闭数据集 166
7.3 设置数据集状态 167
7.4 导航数据集 171
7.5 查找数据集信息 176
7.6 显示与编辑数据子集 178
7.7 修改数据 181
7.8 数据集事件 185
7.9 小结 185
第8章 数据访问组件 187
8.1 TDataSource组件 188
8.1.1 TDataSource属性、方法及事件介绍 188
8.1.2 TDataSource创建与使用步骤 192
8.2 TClientDataSet组件 192
8.2.1 TClientDataSet属性、方法及事件介绍 193
8.3 TDataSetProvider组件 203
8.2.2 TClientDataSet的使用 203
8.3.1 TDataSetProvider属性、方法及事件介绍 204
8.3.2 TDataSetProvider使用方法与技巧 207
8.4 TXMLTransform组件 207
8.4.1 TXMLTransform属性、方法及事件介绍 207
8.4.2 TXMLTransform使用技巧 210
8.5 TXMLTransformProvider组件 212
8.5.1 TXMLTransformProvider属性、方法及事件介绍 212
8.5.2 TXMLTransformProvider使用技巧 214
8.6 TXMLTransformClient组件 215
8.6.1 TXMLTransformClient属性、方法及事件介绍 215
8.6.2 TXMLTransformClient使用技巧 216
8.7 Provider组件使用方法与技巧 218
8.8 小结 228
第9章 数据控制组件 229
9.1 数据控制组件的公共使用特性 230
9.2 TDBGrid组件 231
9.2.1 TDBGrid属性、方法及事件介绍 232
9.2.2 TDBGrid应用实例 235
9.3 TDBNavigator组件 237
9.3.1 TDBNavigator属性、方法及事件介绍 237
9.3.2 TDBNavigator应用实例 239
9.4.1 TDBText属性、方法及事件介绍 240
9.4 TDBText组件 240
9.4.2 TDBText应用实例 241
9.5 TDBEdit组件 243
9.5.1 TDBEdit属性、方法及事件 243
9.5.2 TDBEdit应用实例 244
9.6 TDBMemo组件 246
9.6.1 TDBMemo属性、方法及事件 246
9.6.2 TDBMemo应用实例 249
9.7 TDBImage组件 250
9.7.1 TDBImage属性、方法及事件介绍 250
9.8 TDBListBox组件 251
9.7.2 TDBImage应用实例 251
9.8.1 TDBListBox属性、方法及事件 252
9.8.2 TDBListBox应用实例 252
9.9 TDBComboBox组件 254
9.9.1 TDBComboBox属性、方法及事件介绍 254
9.9.2 TDBComboBox应用实例 255
9.10 TDBCheckBox组件 256
9.10.1 TDBCheckBox属性、方法及事件 256
9.10.2 TDBCheckBox应用实例 258
9.11 TDBRadioGroup组件 259
9.11.1 TDBRadioGroup属性、方法及事件 259
9.11.2 TDBRadioGroup应用实例 260
9.12 TDBLookupListBox组件 261
9.12.1 TDBLookupListBox属性、方法及事件 262
9.12.2 TDBLookupListBox应用实例 263
9.13 TDBLookupComboBox组件 265
9.13.1 TDBLookupComboBox属性、方法及事件 265
9.13.2 TDBLookupComboBox应用实例 266
9.14 小结 267
第10章 dbExpress组件 269
10.1 TSQLConnection组件 270
10.1.1 TSQLConnection属性、方法及事件 271
10.1.2 TSQLConnection使用技巧 276
10.2 TSQLDataSet等单向数据集组件 281
10.2.1 TSQLDataSet等属性、方法及事件介绍 283
10.2.2 TSQLDataSet等单向数据集的使用方法与技巧 288
10.3 TSQLMonitor组件 302
10.3.1 TSQLMonitor属性、方法及事件介绍 302
10.3.2 TSQLMonitor的使用步骤与方法 304
10.4 TSQLClientDataSet组件 305
10.4.1 TSQLClientDataSet属性、方法及事件介绍 305
10.4.2 TSQLClientDataSet使用方法与技巧 308
10.5 小结 308
第11章 理解与掌握字段组件 309
11.1 动态字段组件 310
11.2 持久性字段组件 311
11.2.1 创建与删除持久性字段 312
11.2.2 定义特殊持久性字段 313
11.2.3 设置持久性字段属性与事件 315
11.3 字段组件方法 317
11.4 操作字段值 318
11.4.1 访问字段值 318
11.4.2 转换字段值 320
11.4.4 为字段设置默认值 321
11.4.5 指定约束 321
11.4.3 检查字段当前值 321
11.5 使用对象字段 322
11.5.1 显示ADT与Array字段 322
11.5.2 使用ADT字段 323
11.5.3 使用Array字段 324
11.5.4 使用DataSet字段 325
11.5.5 使用Reference字段 326
11.6 小结 327
第12章 使用客户端数据集 329
12.1 使用客户端数据集操作数据 330
12.1.1 导航客户端数据集中的数据 330
12.1.2 限制记录的出现 333
12.1.3 表示主从关系 337
12.1.5 使数据只读 340
12.1.4 约束数值 340
12.1.6 编辑数据 341
12.1.7 排序与索引 342
12.1.8 表示计算值 344
12.1.9 使用自维护合计 345
12.1.10 添加定制信息 346
12.2 从其他数据集复制数据 347
12.3 使用带Provider的客户端数据集 348
12.4 使用TSQLClient-DataSet 352
12.5.1 创建一个新的数据集 355
12.5 使用基于文件数据的客户端数据集 355
12.5.2 从文件或流装入数据 356
12.5.3 将修改信息合并入数据 357
12.5.4 将数据保存至文件或流 357
12.6 小结 357
第四部分 Kylix前沿应用开发 361
第13章 多线程应用 361
13.1 定义线程对象 362
13.1.1 初始化线程 363
13.1.2 编写线程函数 364
13.2.1 避免同时访问 367
13.1.3 编写清除代码 367
13.2 线程同步 367
13.2.2 等待其他线程 369
13.3 执行线程对象 371
13.4 调试多线程应用 372
13.5 小结 372
第14章 Internet应用 373
14.1 Web Broker与WebSnap技术特性 374
14.2 基础知识 375
14.3 WWW工作方式 377
14.4.2 Apache DSO Module 378
14.4.1 CGI stand-alone 378
14.4 Web服务器应用类型 378
14.4.3 转换Web服务器应用目标类型 379
14.5 使用Web Broker 379
14.5.1 使用Web Broker创建Web服务器应用 380
14.5.2 Web Broker应用结构 380
14.5.3 Web调度器 382
14.5.4 动作项 382
14.5.5 访问客户端请求信息 385
14.5.6 创建HTTP响应报文 387
14.5.7 生成响应报文内容 388
14.5.8 在响应中使用数据库信息 392
14.6 使用WebSnap 395
14.6.1 基本WebSnap组件 396
14.6.2 使用WebSnap创建Web服务器应用 399
14.6.3 高级HTML设计 402
14.6.4 登录支持 403
14.6.5 调度请求 411
14.7 使用XML文档 416
14.7.1 使用文档对象模型 417
14.7.2 使用XML组件 418
14.7.3 使用Data Binding向导提取XML文档 420
14.8.1 编写支持Web Services的服务器 423
14.8 使用Web Services 423
14.8.2 编写Web Services客户端 430
14.9 调试服务器应用 431
14.9.1 调试CGI应用 431
14.9.2 调试Apache DSO应用 432
14.10 小结 433
第15章 跨平台应用 435
15.1 Windows与Linux环境区别 436
15.2 Delphi/Windows与Kylix/Linux的区别 438
15.3 将Windows应用程序移至Linux 443
15.3.1 移植方式 443
15.3.2 移植应用程序步骤 444
15.3.3 编写可移植代码 445
15.3.4 一些无法移植的特性 449
15.3.5 消息与系统事件 449
15.3.6 在Windows与Linux间共享源文件 450
15.4 跨平台数据库应用 450
15.4.1 将数据库应用程序移植至Linux 453
15.4.2 更新dbExpress应用程序数据 454
15.5 跨平台Internet应用 456
15.6 小结 456
第16章 数据库应用开发实例 461
第五部分 Kylix应用开发实例 461
16.1 安装与卸载InterBase数据库 462
16.1.1 系统需求 462
16.1.2 安装InterBase数据库 462
16.1.3 卸载InterBase数据库 463
16.2 需求分析与方案设计 464
16.3 创建新项目 466
16.4 窗体设计 466
16.4.1 主窗体设计 466
16.4.2 数据模块窗体设计 467
16.4.3 雇员管理窗体设计 470
16.4.4 数据新增窗体设计 471
16.4.5 数据浏览与编辑窗体设计 474
16.4.6 雇员查询窗体设计 477
16.4.7 工资调整历史资料查询窗体设计 478
16.4.8 错误消息窗体设计 480
16.5 程序代码编写 481
16.5.1 主窗体相关事件句柄编写 481
16.5.2 雇员管理窗体相关事件句柄及过程编写 483
16.5.3 错误消息窗体相关事件句柄编写 488
16.5.4 数据新增窗体相关事件句柄编写 488
16.5.5 数据浏览与编辑窗体相关事件句柄编写 493
16.5.6 雇员查询窗体相关事件句柄编写 495
16.6 实例运行 497
16.7 小结 501
第17章 Web应用开发实例 503
17.1 创建一个新项目 504
17.2 创建EmployeeTable页面 505
17.3 将数据组件添加至EmployeeTable页面模块 505
17.4 创建用于显示数据的网格 506
17.5 添加编辑窗体 508
17.6 添加错误报告 511
17.7 运行Web应用实例 512
17.8 小结 513