《IDE与面向对象编程》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:徐新华编著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2000
  • ISBN:7115084394
  • 页数:493 页
图书介绍:

第一章 Delphi 5的开发环境 1

1.1 Delphi 5的新功能 2

1.1.1 数据库的改进 2

1.1.2 MIDAS的改进 3

1.1.3 开发环境的改进 3

1.1.4 项目管理器的改进 4

1.1.5 VCL的改进 5

1.1.6 新的工具 6

1.1.7 ActiveX的改进 6

1.2 IDE的主窗口 7

1.3.1 File菜单 8

1.3 菜单栏 8

1.3.2 Edit菜单 12

1.3.3 Search菜单 16

1.3.4 View菜单 19

1.3.5 Project菜单 24

1.3.6 Run菜单 28

1.3.7 Component菜单 32

1.3.8 Database菜单 32

1.3.9 Tools菜单 33

1.3.10 Help菜单 34

1.4 工具栏 35

1.5 元件选项板 37

1.5.1 Standard页 37

1.5.2 Additional页 38

1.5.3 Win32页 39

1.5.4 System页 40

1.5.5 Data Access页 40

1.5.6 Data Controls页 41

1.5.7 ADO页 41

1.5.8 InterBase页 42

1.5.9 Midas页 42

1.5.10 InternetExpress页 43

1.5.11 Internet页 43

1.5.12 FastNet页 44

1.5.13 Decision Cube页 44

1.5.14 QReport页 45

1.5.16 Win 3.1页 46

1.5.15 Dialogs页 46

1.5.17 Samples页 47

1.5.18 ActiveX页 47

1.5.19 Servers页 48

1.5.20 自定义元件选项板 48

1.6 Object Inspector 49

1.7 代码编辑器 51

1.7.1 代码编辑器的窗口 52

1.7.2 代码导航 53

1.7.3 装订区 53

1.7.4 在代码编辑器中获得帮助和提示 54

1.8 Code Explorer 54

1.8.2 基本操作 55

1.8.1 显示哪些内容 55

1.8.3 设置Code Explorer的选项 56

1.9 CodeInsight 57

1.9.1 类自动完成 57

1.9.2 代码模板 58

1.9.3 代码自动完成 59

1.9.4 参数提示 60

1.9.5 提示表达式的值 60

1.9.6 符号声明 60

1.9.7 自定义Code Insight 61

1.10 自定义代码编辑器 62

1.10.1 设置编辑器的一般选项 62

1.10.2 设置代码编辑器的显示和字体选项 63

1.10.3 指定键盘映射方案 64

1.10.4 设置代码编辑器的颜色 64

1.11 对象库 66

1.11.1 New页 66

1.11.2 ActiveX页 67

1.11.3 Multitier页 68

1.11.4 Forms页 68

1.11.5 Dialogs页 69

1.11.6 Projects页 70

1.11.7 Data Modules页 70

1.11.8 Business页 71

1.11.9 设置对象库的显示方式 71

1.11.12 使用对象库中的项目模板 72

1.11.11 代码重用的方式 72

1.11.10 通过对象库实现代码重用 72

1.11.13 自定义对象库 73

1.12 项目浏览器 75

1.12.1 项目浏览器的窗口 75

1.12.2 标识符与符号 76

1.12.3 项目浏览器的基本操作 76

1.12.4 设置编译器的有关选项 77

1.12.5 设置项目浏览器的选项 77

1.13 管理桌面设置 77

1.14 设置IDE的选项 78

第二章 Component与Form 81

2.1 把元件加到Form上 82

2.4 剪切、复制和粘贴 83

2.2 在Form上选择元件 83

2.3 移动、删除和改变尺寸 83

2.5 在Form上对齐元件 84

2.6 把元件分组 85

2.7 向项目中加入新的Form 85

2.8 在多个Form或单元间切换 86

2.9 从一个Form中调用另一个Form 87

2.10 与其他项目共享Form 87

2.11 把Form以ASCII格式存储 88

2.12 使用Form模板和向导 88

第三章 Property与Event 91

3.1 在设计期修改元件的特性 92

3.3.1 直接键入编辑器 93

3.3 特性编辑器 93

3.2 在运行期修改元件的特性 93

3.3.2 下拉列表编辑器 94

3.3.3 对象列表编辑器 95

3.3.4 对话框编辑器 95

3.3.5 嵌套编辑器 95

3.3.6 集合编辑器 96

3.3.7 两个特殊的特性 97

3.4 生成新的事件句柄 97

3.5 建立默认的事件句柄 98

3.6 重用事件句柄 98

3.8 删除事件句柄 100

3.7 定位已有的事件句柄 100

3.9 处理鼠标和键盘事件 101

3.10 处理鼠标拖放 102

3.10.1 开始拖放 102

3.10.2 接受被拖放的对象 102

3.10.3 处理OnDragDrop事件 103

3.10.4 结束拖放操作 103

3.11 处理与菜单有关的事件 104

第四章 项目管理 105

4.1 什么是项目 106

4.1.1 项目文件 106

4.1.2 Form和单元文件 107

4.1.4 包文件 108

4.1.5 项目选项文件和桌面文件 108

4.1.3 资源文件 108

4.1.6 其他文件 109

4.2 有关项目的基本操作 109

4.3 如何设计一个项目 110

4.3.1 文件名约定 110

4.3.2 代码被共享的单元 111

4.3.3 使一个Form能够被其他Form调用 112

4.3.4 管理多个项目(项目组) 112

4.4 项目管理器 113

4.4.1 工具栏和状态栏 113

4.4.2 快捷菜单 114

4.5 项目组 115

4.5.1 怎样建立项目组 115

4.5.4 在项目组中加入BAT项目 116

4.5.2 在项目组中加入DLL项目 116

4.5.3 在项目组中加入控制台程序项目 116

4.5.5 编译项目组 117

4.6 与其他项目共享文件 117

4.7 选择项目模板 118

4.8 编译、重建和运行项目 118

4.9 设置项目选项 119

4.10 指定项目的主Form 119

4.11 指定应用程序的标题、图标和帮助文件 120

4.12 设置编译器的选项 121

4.13 设置链接器的选项 123

4.14 设置项目的搜索路径 124

4.15 设置项目的版本信息 125

4.16 设置包的选项 126

第五章 调试器 128

5.1 错误类型 129

5.1.1 设计期错误 129

5.1.2 编译期错误 129

5.1.3 运行期错误 129

5.1.4 逻辑错误 130

5.1.5 怎样尽可能地减少错误 130

5.2 常见的编程错误 130

5.2.1 在类的实例创建之前使用了它 130

5.2.2 确保类的实例被释放 131

5.2.3 驯服指针 131

5.2.5 释放空指针 132

5.2.4 使用未初始化的PChar 132

5.3 准备调试 133

5.4 设置调试器的选项 133

5.4.1 General页 133

5.4.2 Event Log页 134

5.4.3 Language Exceptions页 135

5.4.4 OS Exceptions页 136

5.4.5 Distributed Debugging页 136

5.4.6 编译指令 137

5.5 自定义调试器的颜色 137

5.6 控制程序的运行 138

5.6.1 单步执行 138

5.6.2 跟踪执行 139

5.6.7 重新开始运行 140

5.6.6 暂停运行 140

5.6.3 跳过一段代码 140

5.6.4 全速执行剩余的代码 140

5.6.5 返回到执行点 140

5.6.8 命令行参数 141

5.7 断点 141

5.7.1 源代码断点 141

5.7.2 机器指令断点 143

5.7.3 数据断点 144

5.7.4 模块断点 144

5.7.5 指定遇到断点时的行为 145

5.7.6 断点列表窗口 146

5.7.7 删除断点 146

5.7.9 禁止和允许断点 147

5.7.8 设置断点的属性 147

5.8 监视表达式的值 148

5.8.1 观察窗口 148

5.8.2 计算和修改表达式的值 150

5.8.3 计算提示 150

5.8.4 Inspector窗口 151

5.8.5 查看局部变量的值 152

5.9 几个与调试有关的窗口 152

5.9.1 CPU窗口 152

5.9.2 FPU窗口 154

5.9.3 线程状态窗口 154

5.9.5 模块窗口 155

5.9.4 Call Stack窗口 155

5.9.6 事件记录窗口 156

5.10 调试动态链接库 157

5.11 远程调试 157

5.11.1 本地的配置 158

5.11.2 远程机器的配置 159

5.12 多进程调试 159

5.13 分布式调试 160

5.13.1 COM跨进程调试 160

5.13.2 CORBA跨进程调试 161

5.14 Assert例程 161

5.15 其他调试手段 163

第六章 Object Pascal语言 165

6.1 @运算符 166

6.2 运行期类型信息 168

6.3 字符串类型 169

6.3.1 如何声明一个字符串 169

6.3.2 AnsiString 170

6.3.3 ShortString 174

6.3.4 WideString 176

6.3.5 以null结束的字符串 177

6.3.6 字符串常量 178

6.4 动态数组 179

6.4.1 如何声明动态数组 179

6.4.2 动态数组的长度 180

6.4.3 动态数组的整体赋值 180

6.4.4 类型相容 181

6.4.5 把动态数组作为参数传递 182

6.4.6 多维的动态数组 182

6.5 指针 183

6.5.1 声明指针类型和变量 183

6.5.2 动态变量——访问指针所指的数据 184

6.5.3 指针的相容 185

6.5.4 分配内存 185

6.5.5 @运算符 187

6.5.6 无类型指针 187

6.6 可变类型(Variant) 188

6.6.1 如何声明一个Variant变量 188

6.6.2 Variant的结构 189

6.6.3 Variant是生存期自管理的 190

6.6.4 Variant能够参加的运算 192

6.6.5 Variant的强制转换 193

6.6.6 varEmpty和varNull 194

6.6.7 用于操作Variant的例程 194

6.6.8 可变数组 194

6.6.9 OleVariant 198

6.7 异常处理 199

6.7.1 为什么要使用异常处理 199

6.7.2 try...except结构 200

6.7.3 try...finally结构 202

6.7.4 嵌套 203

6.7.5 默认的异常处理句柄 204

6.7.6 定义自己的异常 205

6.7.7 在异常句柄中再次触发异常 207

第七章 动态链接库 209

7.1 为什么要使用DLL 210

7.2 静态链接与动态链接 211

7.3 静态引入方式 211

7.4 接口单元 212

7.5 动态引入方式 216

7.6 怎样编写DLL 219

7.7 怎样在DLL中引出例程 220

7.8.1 对DLL的全局变量初始化 222

7.8.2 DLL的入口函数 222

7.8 DLL的初始化代码和退出码 222

7.8.3 DLL的出口函数 225

7.9 处理DLL中的异常 225

7.10 内存管理 226

7.11 引出DLL中的类 226

7.12 DLL中的虚拟类 230

7.13 把回调函数传递给DLL 235

7.14 在DLL中调用回调函数 238

7.15 把Form当作DLL重用(Reuse) 241

7.16 DLL中的模式Form 242

7.17 DLL中的无模式Form 244

7.18 共享DLL中的全局变量 245

7.18.2 映射到进程的地址空间 246

7.18.3 释放文件映射对象 246

7.18.1 创建文件映射对象 246

7.18.4 一个DLL的例子 247

7.18.5 访问DLL中的全局数据 249

第八章 与C++共享代码 253

8.1 混合编程的方式 254

8.2 访问C++OBJ中的例程 254

8.3 访问C++OBJ文件中的全局数据 256

8.4 访问C++的RTL 256

8.5 访问C++类 262

8.6 在C++中访问Delphi的OBJ 268

8.7 在C++中访问Delphi的DLL 268

第九章 面向对象编程 271

9.1 声明 272

9.2 字段 273

9.3 方法 274

9.3.1 方法的声明和定义 275

9.3.2 静态方法 276

9.3.3 虚拟方法 277

9.3.4 动态方法 278

9.3.5 抽象方法 278

9.3.6 消息句柄 279

9.3.7 overload指示字 280

9.3.8 构造和析构 280

9.3.9 类方法 283

9.4 特性 283

9.4.1 声明特性的语法 284

9.4.2 read和write子句 285

9.4.3 stored、default和nodefault子句 286

9.4.4 index子句 287

9.4.5 特性重载 287

9.4.6 数组特性 289

9.5 成员的可见性 291

9.5.1 private 291

9.5.2 protected 292

9.5.3 public 292

9.5.4 published 292

9.5.5 automated 293

9.6 类引用 293

第十章 VCL的结构 296

10.1 概述 297

10.2 TObject 298

10.3 TPersistent 301

10.4 TComponent 302

10.5 TControl 307

10.6 TWinControl 327

10.7 TGraphicControl 341

10.8 TCustomControl 342

10.9 运行期类型信息 343

10.9.1 TypInfo单元 343

10.9.2 获取对象的类型信息 345

10.9.3 获取方法指针的类型信息 351

10.9.4 获取整型的RTTI信息 355

10.9.5 获取枚举的RTTI信息 356

10.9.6 获取集合的RTTI信息 357

第十一章 Open Tools API 360

11.1 关于OTA的概述 361

11.2 IDE的服务接口 362

11.3 怎样创建专家(Expert) 362

11.4 怎样注册专家 366

11.5 esStandard专家的示例 367

11.6 esAddIn专家的示例 368

11.7 基于DLL的专家 371

11.8 一个多线程的专家 381

11.9 esForm专家的示例 392

第十二章 编写自己的元件 397

12.1.2 现有的元件 398

12.1.1 公共祖先类 398

12.1 选择祖先类 398

12.1.3 元件模板 399

12.1.4 我们的建议 399

12.2 建立元件框架 399

12.3 手工建立元件框架 401

12.4 加入特性 402

12.4.1 加入简单型的特性 402

12.4.2 加入枚举型的特性 403

12.4.3 加入集合型的特性 404

12.4.4 加入对象型的特性 405

12.4.5 加入数组型的特性 407

12.4.6 公开继承的特性 408

12.5.1 方法的可见性 409

12.4.7 给出特性的默认值 409

12.5 加入方法 409

12.5.2 避免内部相关性 410

12.5.3 给方法命名 410

12.5.4 声明和实现方法 410

12.5.5 加入虚拟方法 411

12.5.6 加入动态方法 411

12.5.7 加入抽象方法 412

12.6 加入事件 412

12.7 几个典型的自定义元件 417

12.7.1 TExtendedMemo——TMemo的扩展 417

12.7.2 TTabbedListBox——TListBox的扩展 420

12.7.3 TRunButton——执行外部程序 425

12.7.4 TButtonEdit——复合元件 429

12.7.5 TDigitalClock——加入新的事件 433

12.7.6 TPasswordDialog——把Form加到元件选项板上 437

12.7.7 TMyHintWindow——伪可视元件 439

12.7.8 TMarquee——动态效果的元件 441

12.7.9 TDBWavPlayer——数据感知控件 451

12.8 编写特性编辑器 455

12.8.1 选择合适的祖先 456

12.8.2 重载某些方法 456

12.8.3 注册特性编辑器 460

12.8.4 一个简单的特性编辑器 461

12.8.5 用对话框来编辑特性 463

12.9 编写元件编辑器 464

12.9.1 TComponentEditor 465

12.9.2 一个简单的元件编辑器 468

12.9.3 注册元件编辑器 469

12.10 把元件加到IDE中 469

第十三章 包 471

13.1 什么是包 472

13.2 安装运行期包 472

13.3 安装设计期包 474

13.4 建立自己的包 476

13.5 包的源文件 478

13.6 怎样编译包 479

13.7 包的版本信息 480

13.8 包收集器 481

13.9 发布包 482

第十四章 国际化和本地化 483

14.1 国际化 484

14.1.1 国际字符集 484

14.1.2 阅读方向 485

14.1.3 用户界面 485

14.1.4 把资源与代码分开 486

14.2 创建Resource DLL 486

14.3 增加或删减语言 488

14.4 Translation Manager 488

14.5 Translation Repository 490

14.6 使用资源库 491

14.7 动态切换资源库 492