《Visual C++.NET程序设计 从MFC到.NET类库》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:彭忠良著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2003
  • ISBN:7111125584
  • 页数:405 页
图书介绍:本书是Visual C++.NET程序设计教材,含MFC和.NET类库两部分。

第1章 MFC类库简介 3

1.1 Win32 API及MFC 3

1.2 MFC的中文支持 3

第一部分 用.NET MFC编程 3

1.3 Win 9.x与NT平台 4

1.4 MFC的组成 4

1.4.1 MFC类库中最重要的三个类 4

1.4.3 从应用程序角度对MFC类库分类 5

1.4.4 MFC类库的全局函数、全局变量、宏 5

1.4.2 MFC 7.0类库层次结构全图 5

1.5 MFC类库的主要文件 6

第2章 .NET MFC编程环境 7

2.1 应用向导 7

2.1.1 用应用向导生成一个应用框架 7

2.1.2 生成的主要的类及其作用 11

2.1.3 生成的其他主要文件及其作用 11

2.1.4 Debug与Release版本 11

2.1.5 退出或再次进入ex2工程 11

2.3 类向导的几个主要功能 12

2.2 视图菜单 12

2.3.1 创建一个类 12

2.1.7 编译与连接ex2工程 12

2.1.8 执行ex2工程 12

2.1.6 转移ex2工程 12

2.3.2 响应Windows消息 14

2.3.3 增加一个成员变量 15

2.3.4 增加一个成员函数 16

2.3.5 覆盖一个虚函数 16

2.4 添加资源 17

2.5 Debug与TRACE宏 17

2.6 其他工具 18

第3章 消息映射 19

3.1 消息驱动 19

3.2 消息映射机制 23

3.3 OnPaint及OnDraw函数 24

3.4 例程 25

3.4.1 ex31例程 25

3.4.2 ex32例程 27

4.1.1 CDC类 30

4.1.2 CDC类及其派生类的使用 30

4.1 CDC类及其派生类 30

第4章 设备环境类及绘制工具类 30

4.1.3 无效矩形区 31

4.1.4 ex41例程 32

4.2 CDC类的属性 33

4.3 逻辑坐标与物理坐标 34

4.3.1 逻辑坐标与物理坐标 34

4.3.2 映射方式 35

4.3.3 ex42例程 36

4.4.1 视图类的PreCreateWindow函数 41

4.4 视图类的两个函数及窗框类的一个函数 41

4.4.2 窗框类的PreCreateWindow函数 42

4.4.3 视图类的OnPrepareDC 42

4.5 GDI对象 43

4.5.1 六个GDI对象 43

4.5.2 CPen、CFont, CBrush的使用 43

4.5.3 ex43工程 44

4.5.4 CRgn的使用 46

4.5.5 ex44工程 46

4.6 ex45例程 47

5.3 CBitmap的使用方法 51

5.2 BMP位图文件的格式 51

5.1 与设备无关的位图类CBitmap 51

第5章 位图与调色板 51

5.4 位图例程 52

5.4.1 ex51例程 52

5.4.2 OpenBmpFile例程 54

5.4.3 SunRises例程 57

5.5 调色板类CPalette 62

5.5.1 CPalette的使用场合 62

5.5.2 Palette例程 62

5.6 绘制工具类对象的句柄表示 69

6.1.2 控件的种类 70

6.2.1 公共控件的种类 70

6.2 Windows的公共控件 70

6.1 控件 70

6.1.1 控件的定义 70

第6章 控件与对话框 70

6.2.2 ex60工程 71

6.2.3 对Win3.x中的六种控件的事件处理 73

6.2.4 对在Win9.x中开始使用的控件的事件处理 73

6.2.5 对控件进行操作的一般方法 73

6.3 公共控件使用例程 74

6.3.1 CtrlAnimate例程 74

6.3.2 CtrlBitmapButton例程 75

6.3.3 CtrlButton例程 76

6.3.4 CtrlComboBox例程 78

6.3.5 CtrlEditandListBox例程 78

6.3.6 CtrlExComboBox例程 80

6.3.7 CtrlHeader例程 81

6.3.8 CtrlHotKey例程 83

6.3.9 CtrlList例程 85

6.3.10 CtrlSlider例程 86

6.3.11 CtrlSpin例程 87

6.3.12 CtrlTab例程 88

6.3.14 CtrlTree例程 90

6.3.13 CtilPicture例程 90

6.4 提示信息框 92

6.5 模式对话框 93

6.5.1 模式对话框的设计 93

6.5.2 DoModal函数 96

6.5.3 改造OnOK函数 97

6.6 Tab页对话框 98

6.6.1 Tab页对话框 98

6.6.2 CtrlTabSheet例程 98

6.8.1 无模式对话框 101

6.8 无模式对话框 101

6.7 公用对话框 101

6.8.2 无模式对话框例程 102

第7章 菜单及键盘加速键 107

7.1 主框架窗口类CMainframe 107

7.2 菜单 107

7.3 菜单命令消息的处理 109

7.4 键盘加速键 111

7.5 常规菜单例程ex71 112

7.6.1 二级菜单 116

7.6.2 浮动菜单 116

7.6 菜单的其他形式 116

7.6.3 两套以上菜单 118

第8章 工具条及状态条 119

8.1 工具条类及状态条类 119

8.2 工具条 120

8.2.1 一般情况 120

8.2.2 显示或隐藏工具条 122

8.2.3 两套菜单及工具条例程——ex70第三步 122

8.3 状态条 127

8.3.1 状态条定义 127

8.3.3 状态指示器 128

8.3.2 在状态条上显示提示信息 128

8.3.4 重新定义状态条 129

8.3.5 状态条例程ex81 129

8.3.6 状态条例程ex82 132

第9章 文档视图结构 135

9.1 应用程序中的主要对象 135

9.2 文档/视图结构 136

9.3 文档类 138

9.4 视图类 139

10.2 文档模板类 141

10.1 单文档应用程序的启动、运行过程 141

第10章 单文档应用及窗口切分 141

10.3 OnFileNew函数 142

10.4 InitInstance函数 144

10.5 OnIdle函数 146

10.6 File菜单下的四条命令的执行 147

10.7 文档模板字符串 147

10.8 例程 148

10.8.1 SDI例程 148

10.8.2 Edit例程 149

10.8.3 Form例程 150

10.8.4 SDI2例程 154

10.8.5 SDIMV例程——多视及窗口切分 155

10.9 单文档应用中各个类之间的关系 162

第11章 多文档应用与序列化及窗口切分 163

11.1 多文档应用的框架窗口类 163

11.2 主框架窗口与子框架窗口之间的关系 164

11.3 多文档应用文档模板类 164

11.4 InitInstance函数 164

11.5 OnFileNew函数 165

11.6 多文档应用各个类对象创建过程 167

11.8.1 MDI例程 168

11.7 多文档应用各个类之间关系 168

11.8 例程 168

11.8.2 MScribble例程 169

11.8.3 SScribble例程 176

11.8.4 mdiEdit例程 177

11.8.5 MDIMV例程——多视及窗口切分 179

11.9 序列化 180

11.9.1 使类序列化的条件 181

11.9.2 集合类及其在序列化中的应用 182

11.11 多视及窗口切分 183

11.9.3 序列化的其他问题 183

11.10 主框架窗口的有关消息 183

第12章 内存管理 186

12.1 内存分配的五种途径 186

12.2 虚拟内存 186

12.3 Win95及NT的地址空间的分布 187

12.4 堆及栈 188

12.5 GlobalAlloc及LocalAlloc函数 188

12.6 CRT函数 188

12.8 直接分配虚拟内存 189

12.9 Memory例程 189

12.7 内存映射文件 189

12.10 内存疏漏 194

第13章 多线程编程 195

13.1 基本概念 195

13.2 工作者线程编程 196

13.2.1 开始一个工作者线程 196

13.2.2 终止一个工作者线程 196

13.2.3 主线程与工作者线程之间的同步 197

13.2.4 自定义Windows消息 197

13.2.5 BkWork例程 198

13.3.1 用户接口线程的创建、运行、终止 203

13.3 用户接口线程 203

13.3.2 UTT例程 204

第14章 动态链接库 210

14.1 基本概念 210

14.2 动态链接库的分类 210

14.3 常规与扩展DLL的制作及使用——MakeDll例程 211

16.1 打印 211

14.4 可执行文件对DLL的调用方法 215

14.4.1 隐式链接 215

14.4.2 显式链接 216

15.2 ADO例程ADODB 217

15.1 ADO基本概念 217

第15章 MFC ADO数据库访问 217

第16章 打印及打印预览 221

16.1.1 你在打印中的任务与框架的任务 221

16.1.2 默认打印过程 221

16.1.3 打印命令的执行过程 222

16.1.4 如何控制打印页数 223

16.1.5 在打印文档中添加页眉和页脚 225

16.1.6 分配与释放GDI资源对象 226

16.2.2 修改打印预览 227

16.2 打印预览 227

16.2.1 打印预览过程 227

16.3 例程 228

16.3.1 例程1——所见即所得 228

16.3.2 例程2——多页打印 230

第17章 帮助文件 234

17.1 选“WinHelp格式”项生成帮助文件 234

17.1.1 生成的主要帮助文件及其作用 234

17.1.3 WinHelp.hm文件 235

17.1.4 WinHelp.rtf文件 235

17.1.2 WinHelp.hpj文件 235

17.1.5 WinHelp.hlp文件 236

17.1.6 WinHelp.cnt文件 236

17.2 “WinHelp格式”下的帮助例程 236

17.2.1 增加帮助内容 237

17.2.2 F1及Shift+F1支持 240

17.2.3 直接调用增加的帮助内容 241

17.2.4 直接调用.hlp帮助文件 241

17.3 选择“HTML帮助格式”项生成帮助文件 242

17.3.1 生成的主要帮助文件及其作用 242

17.4 “HTML帮助格式”例程 243

17.3.2 调用帮助执行文件 243

17.5 HTML帮助开发工具 251

第二部分 用.NET类库编程 257

第18章 .NET框架及类库 257

18.1 Visual C++.NET 257

18.2 .NET框架 257

18.2.1 公共语言运行库 258

18.2.2 中间语言 258

18.2.4 公共语言规范 259

18.2.5 .NET框架类库 259

18.2.3 公共类型系统 259

18.3 第一个托管C++应用ex181 260

18.4 .NET框架类库命名空间 263

18.4.1 在托管C++程序中使用命名空间 264

18.4.2 System命名空间 264

18.4.3 System::Collections命名空间 265

18.4.4 System::IO命名空间 266

18.4.5 Forms命名空间 267

18.4.6 其他命名空间简介 267

19.2 Windows Forms命名空间 269

19.1.2 Windows Forms与MFC 269

19.1.1 Windows Forms与设计程序 269

19.1 什么是Windows Forms 269

第19章 Windows窗体 269

19.3 使用Forms 270

19.3.1 WForm1例程 270

19.3.2 Form类的属性、方法和事件 273

19.3.3 WForm1_1例程 274

19.4 委托与事件 276

19.4.1 委托 276

19.4.2 Delegate1例程 277

19.4.3 事件 279

19.4.4 Event1例程 280

19.5 事件与消息 283

19.5.1 鼠标与键盘等事件 284

19.5.2 Event2例程 284

第20章 控件与对话框 288

20.1 在窗口上放置两个按钮——FormButton例程 288

20.2 控件种类 290

20.2.1 从Control类派生的控件 290

20.2.2 从Component类派生的控件 291

20.3.1 Dialog1例程 292

20.3 普通对话框 292

20.3.2 Dialog2例程 296

20.3.3 公用对话框例程Dialog3 303

20.4 控件进一步使用——Calculator例程 305

第21章 菜单 312

21.1 常规菜单 312

21.2 菜单事件处理 313

21.3 菜单属性Enabled and Checked 313

21.4 浮动菜单 313

21.5 菜单例程Notepaper 314

22.1.1 什么是GDI+ 322

22.1.2 GDI+的功能 322

第22章 图形文字输出 322

22.1 GDI+ 322

22.1.3 GDI+新增功能 323

22.1.4 GDI+托管类接口 323

22.2 GDI+托管类的命名空间 324

22.2.1 四个命名空间 324

22.2.2 System::Drawing命名空间 324

22.3 Graphics类及Color结构 326

22.3.1 Graphics类 326

22.4.1 Graphics1例程 327

22.3.2 Color结构 327

22.4 例程 327

22.4.2 Graphics2例程 330

第23章 打印及打印预览 335

23.1 打印及打印预览概述 335

23.2 Print1例程——打印及预览各种单页位图 336

23.3 Print2例程——打印及预览单页文本 344

23.4 多页打印 348

24.1.2 ADO.NEP结构简介——DataSet及数据提供程序 349

24.1.1 ADO.NET的设计目标 349

24.1 ADO.NET概述 349

第24章 ADO.NET数据库访问 349

24.1.3 ADO.NET名字空间及dll文件 351

24.1.4 ADO.NET平台要求 351

24.2 第一种应用方式——ADONET1例程 351

24.3 第二种应用方式——ADONET2例程 355

第25章 XML Web服务 359

25.1 XML Web服务概述 359

25.2 XML Web服务实例MCPPWS1 360

25.2.1 MCPPWS1——托管C++ XML Web服务 360

25.2.2 MCPPWS1Setup——安装MCPPWS1服务 364

25.2.3 调用MCPWS1服务——托管C++应用UseMCPPWS1 366

25.3 用UDDI创建托管C++应用 371

25.3.1 UseUDDI1例程 372

25.3.2 UseUDDI2例程 379

25.4 XML Web Service概念补充 384

25.4.1 XML 384

25.4.2 XML Web服务通讯协议 385

25.4.3 Web服务描述语言WSDL 386

25.4.5 XML Web服务名字空间 389

25.4.6 XML Web服务小结 389

25.4.4 UDDI 389

第26章 应用程序的部署 390

26.1 在目标机器上安装公共语言运行库 390

26.2 打包.NET框架下开发的应用程序 390

26.2.1 打包托管C++应用程序 390

26.2.2 打包MFC开发的应用程序 392

26.3 应用程序打包和分发的类型 393

26.3.1 打包类型 393

26.3.2 分发类型 393

附录A Form类的全部成员 394

附录B P/Invoke——托管代码与非托管代码之间的桥梁 402