《Microsoft Visual C++4.1编程技巧指南》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:丁香荣主编
  • 出 版 社:成都:电子科技大学出版社
  • 出版年份:1997
  • ISBN:7810437291
  • 页数:347 页
图书介绍:

目 录 2

前言 2

第一篇 Visual C++4.1使用基础 2

第一章一个简单例子 2

第一节VC4.1界面简析 2

一、常用名词解释 2

1.App Wizard 2

2.Class Wizard 2

3.Porject Workspace窗口 2

7.在线帮助 3

6.资源编辑 3

5.源程序浏览 3

4.Class View/File View/Resoure View/Info View 3

二、VC4.1界面简析 4

1.菜单功能简介 5

2.基本构成窗口介绍 6

第二节一个简单的例子 7

一、对文档类的修改 14

1.数据结构的确定 14

2.对文档类的修改 16

二、对视类的修改及与文档关系的建立 18

1.应用程序组织 21

一、Windows编程基本概念 21

第一节Windows编程基本概念 21

第二章MFC4.0构成分析 21

2.窗口 22

3.消息 22

4.图形设备接口(GDI) 22

5.VC/MFC实现(消息映射) 22

6.文档与视 23

第二节应用框架 24

一、“应用框架”的优点 24

二、MFC4.0的功能支持 24

三、“应用框架”如何实现你的应用 25

3.数据 26

1.LWinApp类 26

2.窗口 26

四、“应用框架”与你的“代码”的关系 28

五、例子分析 28

1.浏览工程类 29

2.文档和视 31

第三章文档模板——文档与视结构 36

第一节文档和视 36

一、视 36

1.视的概念 36

2.视的应用 37

3.滚动视 38

4.VC4.1视类 39

二、文档 40

1.文档的存取管理(序列化) 40

2.CArchive类 43

三、文档模板 44

1.文档模板的意义 44

2.文档模板的创建 44

3.文档与视的交互 45

2.单文档开发所需要的类 46

1.单文档应用的建立 46

四、单文档(SDI) 46

五、多文档(MDI) 47

1.多文档应用实现 47

2.多文档开发所需要的类 47

第二节文档应用 48

一、创建一个单文档的应用框架 48

二、滚动视 48

三、一个简单的文档组织 50

1.文档数据结构安排 50

四、增加菜单功能 55

1.资源编辑 55

2.文档类的修改 55

2.菜单编辑 56

3.在编程中对菜单命令进行处理 56

五、实现位图菜单 58

六、窗口内拖动的实现(Tracker) 60

第三节文档的多视 61

一、切分多视 62

1.切分多视的选择 62

2.切分多视的使用 62

二、基于文档模板的多视 64

1.创建文档模板 65

3.如何使用文档模板 66

2.文档模板如何加入到应用中 66

三、较低层的多视 67

1.文档的管理 67

2.视的组织 67

1.文档和视如何联系 67

第四章图形处理功能 73

第一节图形设备接口(GDI) 73

一、设备环境表(Device Context) 73

二、映设方式 74

1.“固定比例”的映射方式 75

2.“比例可变”的映射方式 75

3.用户坐标体系 76

2.全窗口坐标体系 76

四、坐标的转换 76

三、绘图坐标 76

1.屏幕坐标体系 76

五、VC的编程接口 77

1.有关DC类 78

2.DC类对象的获取 78

3.CDC的映射模式功能 78

六、其它设备的DC 81

第二节CDC类的位图功能 83

一、与设备无关的位图(DIB) 83

1.BMP文件头 83

2.位图(DIB)结构组织 84

一、对话框 103

第五章更一般的窗口——对话框 103

第一节对话框概述 103

二、对话框的分类 104

三、控制 104

四、对话框与控制的关系 104

五、资源编辑器 105

六、VC4.1对话框应用编程接口 106

1.CDialog类 106

2.控制类 107

第二节对话框的一般应用 107

一、对话框的创建 107

3.创建对话框 108

1.创建对话框模式 108

2:派生一个CDialog类 108

4.创建有模式对话框 109

5.创建无模式对话框 110

二、对话框的设计 113

1.设计对话框模板 113

2.设计“对话框类” 114

3.用Class Wizard增加控制变量 114

4.用Class Wizard增加控制功能 114

5.实现“控制功能” 114

三、一个简单的对话框应用 115

1.创建一个对话框模板 115

4.调用对话框 116

2.创建对话框类 116

3.修改对话框类 116

5.对返回属性的处理 117

第三节无模式对话框 119

一、基于对话框的应用 119

二、无模式对话框 121

1.更像一个一般的窗口 121

2.无模式对话框的生命期 121

3.无模式对话框的无意返回 121

三、对话框的多样性 122

1.对话框的多样性 122

2.对话框的包容性 123

第一节集合类 124

一、集合类的分类 124

二、集合类的形状 124

第六章动态数据结构——集合类 124

三、基于模板的集合类 125

四、非模板的集合类 125

五、集合类的选择 126

六、集合类的使用 127

2.链表(List) 129

3.映射类(Map) 129

1.列表(Array) 129

七、对所有元素的访问 129

八、对集合类元素的序列化 130

第二节集合类的应用 131

一、利用集合类来创建新的数据结构 131

1.创建堆栈 132

2.创建队列 133

二、在应用中使用集合类 133

1.利用集合类来实现文档的操作恢复功能(Un Do) 134

第七章 进程和线程 136

第一节概述 136

一、进程 136

1.32位系统进程的有关概念 136

1.Win32线程的概念 137

二、线程 137

2.VC/MFC编程接口 137

2.VC/MFC编程接口 138

三、同步 138

1.应用中线程间的同步 139

2.VC/MFC的编程接口 140

第二节多线程应用 140

一、创建线程 140

1.创建工作者线程 140

2.创建交互线程 142

二、线程的终止 143

1.工作者线程 144

三、编程实例 144

2.交互线程 146

第三节线程间的同步 157

一、线程局部存储区 157

二、窗口消息映射(Windows Handle Maps) 158

1.对象传递 158

2.用户自定义的消息机制 159

三、同步类的使用 159

1.VC/MFC同步类介绍 159

2.同步类的使用 160

3.线程安全类的设计 161

四、线程同步 162

一、属性页类介绍 163

第八章Windows95新功能的支持 163

第一节属性页功能 163

1.类CPropertyPage 164

2.类CPropertySheet 164

二、一个简单的属性页应用 166

1.创建一个单文档应用 166

2.创建属性页面 167

3.调用属性页(创建) 167

三、创建自己的属性页功能 168

1.属性页面对象的确定(即page) 169

2.属性页面的管理者(即sheet) 169

一、弹出菜单 173

第二节弹出菜单和其它功能 173

1.弹出菜单就是菜单 174

2.对菜单命令的处理 174

二、菜单对象(CMenu) 174

1.CWnd的菜单功能 176

2.对弹出菜单的命令处理 177

3.应用 177

三、其它功能 178

2.模块的共享 180

1.连接与模块的重用 180

一、什么是动态连接库 180

第一节动态连接库及其VC4.1的实现 180

第九章动态连接库——DLL 180

第二篇 Visual C++4.1高级技术 180

3.可执行程序 181

4.模块 182

二、类库“动态连接库” 183

1.“静态连接方式” 184

2.作为“共享动态连接库”的方式 185

三、动态连接库的使用 185

2.引出 186

1.内存使用 186

二、类库DLL的注意点 186

一、类库DLL的扩展的意义 186

第二节类库DLL的扩展 186

3.直接从类库构造对象 187

三、创建类库DLL扩展 187

1.定义文件 187

2.引入库 187

第十章复合文档——OLE容器 190

第一节OLE技术介绍 190

一、了解一点OLE知识 190

二、OLE的发展 191

三、OLE的基本概念 191

1.对象 191

2.连接与陷入 192

4.拖动(Drag and Drop) 193

3.剪贴板(Clipboard) 193

5.复合文档 194

6.服务器与容器 194

7.OLE动词 195

四、登记注册 195

五、OLE层次分析 196

1.服务器一端 196

1.服务器类 197

2.容器应用类 197

六、VC4.1 OLE支持 197

2.容器一端 197

3.自动化服务(OLE Automation) 198

七、OLE的优点 198

第二节OLE服务器 198

一、创建一个OLE服务器应用框架 201

1.使用AppWizard 201

2.框架浏览 201

二、有关类的分析 205

三、实现你的服务功能 205

1.实现应用功能 205

2.实现OLE服务器功能 205

第三节容器应用 207

2.Build并运行 212

一、新建一个工程(Ole0—2) 212

1.新建工程 212

二、实现容器功能 213

1.修改客户对象 213

2.对视的有关修改 215

3.实现对象的Edit功能(copy/paste) 218

4.实现拖动功能 222

5.对象激活功能 227

一、部件(component) 229

1.OLE控制并不是一个新的东西 229

二、什么是OLE控制 229

第一节OLE控制的基本概念 229

第十一章OCX——OLE控制 229

2.OLE控制 230

三、OLE控制容器 230

四、方法(Method) 230

五、属性和属性页 231

1.定义 231

2.分类 231

3.属性页 232

六、事件 232

七、OLE控制的使用 232

3.进行有关的消息处理(事件) 233

2.在对话框模板上加入OLE控制 233

1.DLE控制的引入 233

第二节OLE控制的创建 234

一、ControlWizard 234

二、修改控制位图 235

三、修改CLE控制的About对话框 236

四、创建控制(Build) 236

五、OLE控制的注册 236

六、OLE控制的测试 237

1.工具的调用过程 237

2.工具的使用 237

1.增加BackColor属性 239

七、固有属性(Stockproperty) 239

2.设置缺省背景色 240

3.修改绘制功能On Draw 240

二、用户属性(Custom) 241

1.增加一个属性Time 241

2.增加一个帮助函数GetCode() 241

3.修改OnDraw() 241

4.修改控制属性页 241

5.增加一动态设置功能 242

第十二章部件对象模型——COM 243

第一节概述 243

一、OLE的本质 243

三、OLE信息管理 244

二、部件对象模型(COM) 244

四、OLE部件和界面 245

五、界面及界面实现 245

1.一个界面不是一个C++类 246

2.一个界面也不是一个C++的对象 246

3.界面是不可更改的协议 246

4.界面是一个很强的类型 246

六、OLE类对象和标识 246

第二节复合文件及其使用 247

一、目录结构和IStorage 247

二、流和IStream 247

五、应用实例 248

四、复合文件的使用场合 248

三、复合文件的结构 248

第十三章 数据库——ODBC与DAO 282

第一节VC对数据库的支持 282

一、开放数据库连通性(ODBC) 284

1.ODBC的部件 284

2.ODBC标准 285

3.ODBC与SQL 285

4.ODBC MFC类 286

二、数据的直接访问(DAO) 287

1.DAO的优点 287

3.DAO的有关类 288

2.DAO与ODBC 288

第二节数据库应用 289

一、ODBC应用 289

1.ODBC使用基础 289

2.CRecorcset类的用法 290

3.CRecordset的SQL功能 290

二、DAO应用 292

1.类CMydBase 292

2.类CDaoSet 292

第十四章网络功能——Windows Socket 311

第一节 网络基础及Windows Socket 311

1.网络协议 312

一、网络基础 312

2.网络寻址 314

二、Windows Socket 315

1.有关网络编程接口 315

2.套接字(Socket) 315

3.Windows Socket 315

第二节网络应用编程实现 319

一、Windows Socket初始化 320

二、从CSocket派生一个类CExsocket 320

三、定义一个消息处理CMsg 321

四、修改文档类(CEx Sock Dos) 323

2.增加一个发送视 330

五、修的视 330

1.基本视CExSockView 330

六、增加连接设置对话框(Setup Dlg) 335

第十五章MAPI——电子信息编程接口 337

第一节MAPI概念和结构 337

一、MAPI的特征 337

二、MAPI结构 339

1.客户应用 339

2.消息子系统 339

三、客户应用 340

四、Spooler 340

3.服务提供者(Services Providers) 340

五、地址手册提供者 341

六、服务提供者 342

七、MAPI子系统 343

八、传送提供者 343

九、消息服务 344

十、消息存储提供者 345

1.消息存储区的概念 345

2.消息存储区的用途 345

十一、MAPI的形态——FORM 346

十二、描述文件(Profiles) 347

十三、MAPI的MFC支持 347