《Windows高级编程 面向对象的思想、方法和实例》PDF下载

  • 购买积分:15 如何计算积分?
  • 作  者:孙晓涛,孙玉霖,施笑畏编著(上海海事大学物流学院)
  • 出 版 社:西安:西北工业大学出版社
  • 出版年份:1997
  • ISBN:7561209819
  • 页数:484 页
图书介绍:

第一章 Windows编程基础 3

1.1 Windows编程的特点 3

1.1.1 消息驱动思想 3

1.1.2 消息的来源 4

1.1.3 消息的传递 4

1.1.4 消息的处理 5

1.2 重要的Windows术语 5

1.3 编写基本的Windows应用程序 11

1.3.1 WinMain函数 12

1.3.2 定义和注册窗口类 12

1.3.3 创建窗口 16

1.3.4 显示窗口 19

1.3.5 建立消息循环 20

1.3.6 窗口函数 21

1.4 建立Windows应用程序 22

1.4.1 模块定义文件 23

1.4.3 建立一个Windows应用程序 24

1.4.2 资源文件 24

1.5 Windows程序的命名规则 27

第二章 消息 29

2.1 深入探讨消息机制 29

2.1.1 消息产生和传送机制 29

2.1.2 Windows多任务的实现 31

2.2 键盘消息 31

2.2.1 键盘与输入焦点 32

2.2.2 虚拟键消息和字符消息 32

2.3.1 鼠标客户区消息 40

2.3 鼠标消息 40

2.3.2 进一步论述鼠标消息 46

2.4 定时器消息 52

2.4.1 SetTimer和KillTimer 52

2.4.2 WM_TIMER消息和时间间隔 53

2.4.3 定时器的使用方式 53

2.5 WM_PAINT消息 58

2.6 应用程序产生和发送消息 65

3.1.1 数据封装 71

第三章 面向对象的C++编程 71

3.1 C++特点 71

3.1.2 可继承性 73

3.1.3 可重载性 74

3.1.4 多态性 74

3.2 类与数据封装 75

3.2.1 类的定义 75

3.2.2 成员函数的实现 75

3.2.3 数据封装及实现方法 77

3.2.4 构造函数与析构函数 78

3.2.5 对象的创建 80

3.3 应用类的方法和特点 80

3.3.1 一些需要涉及的概念 80

3.3.2 类的友元 82

3.3.3 类的静态成员 83

3.3.4 this指针 86

3.3.5 编写面向对象的程序 86

3.4.1 基类和派生类存取 87

3.4 应用继承 87

3.4.2 派生类的构造函数 88

3.4.3 派生类的成员函数 89

3.4.4 类的友元不能被继承 91

3.4.5 多重继承下的二义性 91

3.5 虚拟函数和多态性 92

3.5.1 虚拟函数的声明 92

3.5.2 虚拟函数的调用 93

3.5.4 虚基类 94

3.5.3 纯虚拟函数 94

3.5.5 虚析构函数 95

结束语 95

第四章 ObjectWindows编程基础 96

4.1 OWL简介 96

4.1.1 OWL的命名约定 97

4.1.2 OWL中的层次结构 97

4.2 OWL的使用 101

4.2.1 使用OWL中的类 101

4.2.2 Windows API函数的使用 102

5.1 TModule类简介 104

第五章 模块与应用程序类 104

5.2 TApplication类简介 105

5.3 应用举例 107

5.3.1 一个最简单的应用程序 107

5.3.2 建立自己的应用程序 108

5.4 应用程序的关闭 114

结束语 114

第六章 生成自己的窗口 115

6.1 OWL的窗口体系 115

6.2 界面对象和界面元素 117

6.2.1 界面对象的作用 118

6.2.2 界面对象所做的工作 118

6.2.3 创建界面对象 118

6.2.4 窗口句柄HWindow何时有效 118

6.2.6 删除界面对象 119

6.3 TWindow界面对象 119

6.2.5 让界面元素可见 119

6.3.1 TWindow的数据成员 120

6.3.2 TWindow的成员函数 120

6.4 TFrameWindow界面对象 122

6.4.1 TFrameWindow的数据成员 123

6.4.2 TFrameWindow的成员函数 123

6.5 用响应表进行消息处理 123

6.5.3 定义响应表入口 124

6.5.2 定义响应表 124

6.5.1 说明响应表 124

6.6 包含文件 128

第七章 弹出式窗口和子窗口 130

7.1 不带父窗口的弹出式窗口 130

7.2 带父窗口的弹出式窗口 131

7.3 子窗口 131

7.3.1 构造子窗口 131

7.3.2 操作子窗口 132

7.4 综合例子 133

8.1 菜单组成 143

第八章 菜单和加速键 143

8.2 定义菜单资源 145

8.2.1 用资源描述语句定义菜单资源 145

8.2.2 用Resource Workshop创建菜单资源 147

8.3 加载菜单到程序中 149

8.4 响应菜单消息 149

8.5 增强的菜单功能 157

8.5.1 菜单创建 159

8.5.2 菜单修改 160

8.6.1 TMenu类 170

8.6 TMenu和TPopupMenu类 170

8.6.2 TPopupMenu类 172

8.6.3 TMenu类的应用实例 172

8.7 在菜单中加入加速键 179

8.7.1 在菜单项中加入加速键正文 179

8.7.2 在资源文件中加入加速键表 179

8.7.3 加载加速键 180

9.1.2 对话框和控制 190

9.1.1 模态和非模态对话框 190

9.1 对话框概述 190

第九章 对话框和对话框类 190

9.2 创建对话框资源 192

9.2.1 使用资源描述语句 192

9.2.2 用Resource Workshop建立对话框资源 195

9.3 对话框类 196

9.3.1 常用的TDialog类成员介绍 196

9.3.2 将对话框资源与应用程序相结合 197

9.3.3 应用TDialog类的一个例子 198

9.3.4 非模态对话框的一个例子 209

9.4 其它对话框类 210

9.4.1 输入对话框类TInputDialog 211

9.4.2 颜色选择和定义对话框类TChooseColorDialog 211

9.4.3 字体选择对话框类TChooseFontDialog 212

9.4.4 文件打开对话框类TFileOpenDialog 212

9.4.5 文件保存对话框类TFileSaveDialog 213

9.5 TDialog类的派生类应用实例 214

10.1 OWL控制类简介 223

第十章 控制类及应用 223

10.2 生成各种类型的控制 224

10.2.1 构造控制对象 224

10.2.2 显示控制 225

10.2.3 撤消控制 225

10.3 控制消息及其响应 226

10.4 按钮控制 227

10.4.1 按钮类TButton 228

10.4.2 确认框类TCheckBox和无线按钮类TRadioButton 228

10.4.3 组框控制类TGroupBox 229

10.5 静态控制和编辑控制 233

10.5.1 静态控制类TStatic 233

10.5.2 编辑控制类TEdit 234

10.6 列表框控制 249

10.6.1 构造列表框 249

10.6.2 列表框类的成员函数 250

10.6.3 响应列表框 250

10.7.1 构造组合框 251

10.7 组合框控制 251

10.7.2 TComboBox成员函数 252

10.7.3 组合框示例 252

10.8 滚动控制 269

10.8.1 TScroller类及应用 269

10.8.2 TScrollBar类及应用 275

10.9 TSlider和TGauge控制 281

10.9.1 TSlider类 281

10.9.2 TGauge类 282

10.10 传递控制数据 290

10.10.1 控制的数据类型 290

10.10.2 定义数据缓冲区 292

10.10.3 与对话框进行数据交互的一般过程 292

第十一章 GDI基础 309

11.1 GDI概述 309

11.1.1 GDI提供设备无关性访问 309

11.2 GDI设备环境 310

11.2.1 设备环境的功能 310

11.1.2 GDI管理多任务窗口 310

11.2.2 设备环境的获得和释放 312

11.3 绘图属性 313

11.3.1 绘图坐标系 313

11.3.2 绘图模式 315

11.3.3 GDI支持的逻辑绘图对象 316

11.4 OWL中GDI类的组织方式 316

11.4.1 设备环境类 316

11.4.2 GDI对象类 327

11.5 TPen类和画笔 328

11.5.1 创建TPen对象 328

11.5.2 访问TPen对象 329

11.6 TBrush类和画刷 330

11.6.1 创建TBrush对象 330

11.6.2 访问TBrush对象 330

11.7 TPen和TBrush应用实例 331

12.1 位图简介 339

12.1.1 位图的用途 339

第十二章 位图 339

12.1.2 位图函数 340

12.2 TBitmap类 343

12.2.1 TBitmap的构造函数 343

12.2.2 TBitmap的成员函数 343

12.2.3 TBitmap应用实例 344

12.3 设备无关位图 356

12.3.1 设备无关位图的结构 356

12.3.2 设备无关位图的创建 358

12.4.1 TDib类的构造函数 359

12.4 TDib类 359

12.4.2 TDib类的成员函数 360

12.4.3 TDib类的数据成员 361

12.4.4 对TDib对象的访问 361

12.5 显示位图 363

12.5.1 使用TDC的BitBlt成员函数显示位图 364

12.5.2 放大和缩小位图 364

12.5.3 显示一个设备无关位图 366

13.1.1 调色板工作原理 368

13.1 调色板简介 368

第十三章 调色板和TPalette类 368

13.1.2 使用调色板 370

13.2 API调色板函数 371

13.2.1 所有的API调色板函数 371

13.2.2 API调色板函数简介 371

13.3 TPalette类 374

13.3.1 TPalette类的构造函数 374

13.3.2 TPalette类的公有成员函数 375

13.5 TPalette类应用举例 376

13.4 TDC类和TPalette类 376

第十四章 剪贴板和TClipboard类 385

14.1 剪贴板的功能 385

14.2 使用剪贴板 387

14.3 剪贴板数据格式 388

14.3.1 文本格式 388

14.3.2 位图格式 390

14.3.3 剪贴板中多种格式数据并存 391

14.4.2 TClipboard类的公有成员函数 392

14.4 TClipboard类 392

14.4.1 构造TClipboard类对象 392

14.5 两个TClipboard应用实例 393

14.5.1 第一个例子 393

14.5.2 第二个例子 403

14.5.3 TCommandEnabler类及其应用 411

14.6 TClipboardViewer类和剪贴板浏览器 411

14.6.1 简介 411

14.6.2 TClipboardViewer类 412

第十五章 进程和线程 413

15.1 进程和线程简介 413

15.2 建立一个进程 414

15.2.1 进程的建立 414

15.2.2 含有多个子进程的应用进程实例 417

15.3 多线程程序的开发 426

15.3.1 创建一个线程 426

15.4 TThread类及应用 427

15.3.3 挂起和恢复一个线程 427

15.3.2 终止一个线程 427

15.5 线程间的同步 431

15.5.1 Windows 95的同步对象 432

15.5.2 使用信号灯实现线程同步 432

15.5.3 使用事件对象实现线程同步 433

15.6 线程的优先级 437

16.1 相关术语 441

16.2 MDI的构成 441

第十六章 多文档界面 441

16.3 MDI消息 442

16.4 OWL的MDI类 444

16.4.1 TMDIFrame类 444

16.4.2 TMDIClient类 445

16.4.3 TMDIChild类 448

16.4.4 建立MDI应用程序 448

16.5 MDI类的两个应用实例 449

16.5.1 第一个例子 449

16.5.2 第二个例子 452

17.1 动态连接库的概念 457

17.1.1 静态连接和动态连接 457

第十七章 动态连接库及OWL库参考 457

17.1.2 输入库 458

17.2 ObjectWindows库 458

17.2.1 ObjectWindows头文件 459

17.2.2 ObjectWindows资源文件 463

17.2.3 ObjectWindows数据类型及宏定义 463

18.1 WM_COMMAND消息响应宏 474

第十八章 OWL消息响应宏 474

18.2 Windows消息宏 475

18.3 子窗口ID通知消息 480

18.4 按钮通知消息 480

18.5 组合框通知消息 481

18.6 列表框通知消息 482

18.7 编辑控制消息 482

18.8 其它类型的消息 483

参考文献 484