图书介绍

Visual C++ .NET编程宝典PDF|Epub|txt|kindle电子书版本网盘下载

Visual C++ .NET编程宝典
  • 牛力,傅韵等编著 著
  • 出版社: 北京:电子工业出版社
  • ISBN:712102134X
  • 出版时间:2006
  • 标注页数:717页
  • 文件大小:98MB
  • 文件页数:735页
  • 主题词:C语言-程序设计

PDF下载


点此进入-本书在线PDF格式电子书下载【推荐-云解压-方便快捷】直接下载PDF格式图书。移动端-PC端通用
种子下载[BT下载速度快]温馨提示:(请使用BT下载软件FDM进行下载)软件下载地址页直链下载[便捷但速度慢]  [在线试读本书]   [在线获取解压码]

下载说明

Visual C++ .NET编程宝典PDF格式电子书版下载

下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。

建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!

(文件页数 要大于 标注页数,上中下等多册电子书除外)

注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具

图书目录

第1部分 用户界面1

1.1 Visual Studio环境概览2

第1章 MFC应用程序初接触2

1.2 创建第一个Visual Studio项目4

1.2.1 视图简介7

1.2.2 为按钮添加事件处理程序8

1.2.3 使用Dialog Editor和Toolbox添加控件10

1.2.4 创建DDX变量11

1.3 更正生成错误13

1.4 在Visual Studio环境中调试代码14

1.4.1 设置断点15

1.4.2 步进执行MFC源代码16

1.5 处理消息18

1.6 处理子事件22

1.8 小结23

1.7 重载基类函数23

2.2 文档/视图体系结构设计24

2.1 文档、视图及其相互关系24

第2章 了解文档、视图和单文档界面24

2.3 CDocument类25

2.3.1 声明文档类26

2.3.2 CDocument类的成员函数27

2.3.3 处理消息28

2.3.5 复杂文档数据的处理29

2.3.4 重载虚文档函数29

2.3.6 CCmdTarget和CDocItem类32

2.4 InitInstance函数33

2.4.1 文档和视图管理34

2.4.3 文档模板资源35

2.4.2 框架窗口35

2.4.4 字符串资源和文档模板36

2.4.5 常用视图资源37

2.4.7 使用多个模板38

2.4.6 文档模板的生命周期38

2.4.8 CDocManager类39

2.5 CView类40

2.4.9 删除模板40

2.5.1 声明视图类41

2.5.2 CView类的成员函数42

2.5.4 CView类的派生类43

2.5.3 视图和消息43

2.5.6 返回框架窗口44

2.5.5 CForm视图与基于对话框的应用程序44

2.5.7 OnCreate函数45

2.6.1 去掉文档名46

2.6 控制标题栏文本46

2.7 HexViewer SDI应用程序47

2.6.2 格式化标题栏文本47

2.7.1 打开和读取文件48

2.7.2 视图编码52

2.8 小结55

3.1 MDI结构和 SDI结构之比较56

第3章 多文档界面应用程序56

3.2.2 使用文档的多个视图57

3.2.1 使用多文档类型57

3.2 文档、视图和框架窗口的组合57

3.2.3 CMDIFrameWnd类59

3.2.4 CMDIChildWnd类60

3.2.7 MDI应用程序61

3.2.6 使CDocument类的开销61

3.2.5 CMultiDocTemplate类61

3.3 PaintObj程序62

3.4 拆分窗口69

3.4.1 CSplitterWnd类70

3.4.2 动态拆分器71

3.4.3 在动态窗格中使用不同的视图72

3.4.5 对与多个文档关联的视图使用拆分器73

3.4.4 CRuntimeClass 对象73

3.4.7 创建静态拆分器74

3.4.6 静态拆分器74

3.4.8 共享滚动条简介75

3.5 Dynsplit程序76

3.4.10 拆分器的性能考虑76

3.4.9 确定实际尺寸和理想尺寸76

3.6 小结81

4.1 创建和编辑菜单82

第4章 菜单和快捷键82

4.1.1 定义菜单83

4.1.2 编写菜单事件处理程序87

4.1.3 编写简单的菜单代码89

4.1.4 组合菜单处理程序90

4.2.1 检查键盘输入91

4.2 快捷键91

4.2.3 创建快捷键表资源92

4.2.2 定义快捷键92

4.2.5 选择适当的快捷键93

4.2.4 创建快捷键菜单提示93

4.2.6 原始Windows API的快捷键支持94

4.2.7 将快捷键表连接到窗口类95

4.3.1 菜单命令范围96

4.3 动态更改菜单96

4.3.3 更改弹出菜单97

4.3.2 在运行时更改菜单97

4.3.4 久句柄映射和临时句柄映射99

4.4 上下文菜单100

4.5 小结101

5.2.1 创建鼠标消息处理程序102

5.2 鼠标输入102

第5章 鼠标和键盘输入处理102

5.1 事件102

5.2.2 在屏幕坐标和窗口坐标之间转换103

5.2.3 创建处理鼠标事件的MFC程序104

5.2.4 非工作区鼠标事件110

5.2.5 更改鼠标光标的形状111

5.2.6 创建更改鼠标光标的MFC程序112

5.2.7 捕获鼠标115

5.3.1 物理键盘116

5.3 键盘输入116

5.3.3 可打印字符消息117

5.3.2 Windows逻辑键盘117

5.3.4 回显键盘焦点118

5.4 小结123

6.1 创建和控制状态栏124

第6章 状态栏和工具栏124

6.1.1 默认的状态栏行为125

6.1.2 对齐状态栏126

6.1.3 给状态栏添加文本窗格127

6.1.4 在对话框上放置状态栏128

6.1.5 状态栏示例程序131

6.1.6 给状态栏添加进度条133

6.2.1 MFC控件栏142

6.2 创建和控制工具栏142

6.2.2 创建并初始化工具栏143

6.2.4 显示和隐藏工具栏144

6.2.3 停靠和浮动工具栏144

6.2.5 添加“工具提示”和“浮动文本”145

6.2.7 更新非按钮控件146

6.2.6 添加非按钮控件146

6.2.9 添加ReBar支持147

6.2.8 使ReBar控件147

6.3 小结148

第7章 树视图控件和列表视图控件149

7.1.1 相关基础知识150

7.1 树视图控件150

7.1.2 CTreeCtrl类151

7.1.4 处理CTreeCtrl消息152

7.1.3 创建CTreeCtrl对象152

7.1.5 在CTreeCtrl中插入项157

7.1.6 编辑标签158

7.1.7 在编辑CTreeCtrl项的同时处理Esc键和Enter键160

7.1.8 上下文菜单161

7.1.9 展开和折叠树视图控件分支163

7.1.10 CTreeCtrl示例程序164

7.2 列表视图控件171

7.2.2 创建和关联CImageList对象172

7.2.1 CListCtrl类172

7.2.3 设置和更改视图风格173

7.2.4 向CListCtrl 中添加列174

7.2.5 调整列表视图的列的宽度175

7.2.6 插入列表视图项177

7.3 小结178

8.1.1 图形类型179

8.1 图形设备界面简介179

第8章 图形设备界面编程179

8.1.2 GDI设备180

8.2 设备上下文181

8.1.3 GDI设备类型181

8.2.1 DC绘图属性182

8.2.3 绘制坐标184

8.2.2 WM PAINT消息184

8.2.5 响应WM PAINT 以外的消息进行绘图185

8.2.4 触发WM PAINT消息185

8.3 控制文本186

8.3.1 GDI颜色支持187

8.3.2 文本颜色188

8.3.3 对齐文本189

8.4.1 将对象选入 DC190

8.4 字体190

8.3.4 调整文本190

8.4.3 选择非常备字体191

8.4.2 选择常备字体191

8.5 使用画笔和画刷194

8.5.1 画笔195

8.5.2 画刷197

8.6 映射模式198

8.7 栅操作199

8.7.1 文本绘制函数200

8.7.2 计算文本坐标201

8.8 剪辑区域205

8.9 小结206

9.1 位图和视频内存207

第9章 位图和调色板207

9.2 创建CBitmap 对象208

9.3 加载和设置位图内容209

9.4 把CBitmap绘制到屏幕上210

9.4.1 绘制位图211

9.4.2 创建和显示位图212

9.5 光栅操作214

9.6 BlitDemo程序216

9.7 调色板和颜色222

9.7.1 其他颜色空间223

9.7.2 逻辑调色板225

9.7.4 SetSystemPaletteUse 数227

9.7.3 调色板事件227

9.8.1 DIB文件剖析228

9.8 设备无关位图228

9.8.2 CDib类229

9.8.3 ShowDIB示例程序235

9.9 缓冲237

9.10 小结240

第2部分 对话框241

10.1.1 定义CDialog派生类242

10.1 从对话框和控件开始242

第10章 对话框基础知识及常用控件简介242

10.1.2 CDialog的主要成员243

10.1.3 显示和控制模态对话框244

10.1.4 命令处理路由和默认处理245

10.1.5 控件也是窗口247

10.1.6 把MFC类与控件关联起来248

10.2 使用CButton类255

10.2.1 下压按钮256

10.2.2 单选按钮257

10.2.3 复选框控件261

10.2.4 位图按钮262

10.2.5 使用BS_BITMAP 风格264

10.3.1 使用DDX传送数据267

10.3 使用CEdit类267

10.3.2 使用编辑控件269

10.3.3 修改示例程序271

10.4 使用CListBox类273

10.4.2 选择和查找选项274

10.4.1 添加和删除选项274

10.4.3 使用选项数据275

10.5 使用CComboBox类277

10.6.1 改变控件的颜色278

10.6 修改控件运行时的属性278

10.6.2 设置控件的字体279

10.6.3 循环遍历对话框中的控件280

10.7 小结281

11.1 模态对话框282

第11章 对话框和窗体视图282

11.1.1 创建和显示无模态对话框283

11.1.2 交换数据和状态284

11.1.3 示例程序287

11.2 CommandUI和KickIdle293

11.3 键盘快捷键296

11.4 截获键盘输入297

11.5 串行化基于对话框的应用程序298

11.5.3 从磁盘读取数据299

11.5.2 实现Serialize虚函数299

11.5.1 让每个类可串行化299

11.5.5 基于对话框的串行化示例程序300

11.5.4 将数据保存到磁盘300

11.6 为SDI和MDI应用程序创建窗体视图304

11.6.1 创建SDI窗体视图应用程序305

11.6.2 在文档的多个视图之间进行切换306

11.7 MFC控件视图309

11.7.2 CListView的工作原理310

11.7.1 常见误解310

11.7.3 创建CListBoxView类311

11.8 小结313

11.7.4 使用CListBoxView类313

12.1 CPropertySheet类和CPropertyPage类315

第12章 属性单和属性页315

12.1.3 显示模态属性单316

12.1.2 创建CPropertyPage类316

12.1.1 创建属性页316

12.1.4 显示无模态属性单317

12.1.5 在对话框内显示属性单318

12.2 模态属性单示例程序321

12.3.1 去除标准按钮324

12.3 高级技巧和提示324

12.3.2 重定位标准按钮326

12.3.4 禁用选项卡327

12.3.3 更改标准按钮的标题327

12.3.5 重新启用属性页330

12.3.6 动态设置CPropertyPage选项卡的标题332

12.3.7 更改选项卡的字体334

12.3.8 利用CPropertyPage选项卡的助记符335

12.4 小结336

第3部分 高级编程337

13.1.1 处理NMCUSTOMDRAW通知338

13.1 自己绘制和自定义绘制338

第13章 自定义绘制控件338

13.2.1 创建类340

13.2 创建自定义绘制控件340

13.1.2 为什么要进行自定义绘制340

13.2.2 CListCtrlWithCustomDraw类341

13.2.3 使用CListCtrlWithCustomDraw类349

13.3 小结351

14.1.1 修改基类352

14.1 添加行为352

第14章 为控件添加自定义行为352

14.1.2 多重继承353

14.1.3 消息映射356

14.1.4 模板类357

14.1.5 结合使用多重继承和模板358

14.1.6 消息映射的问题359

14.1.7 错误361

14.2.2 模板友好的消息映射364

14.2.1 问题364

14.2 调整对话框和属性页364

14.2.3 多重继承366

14.2.4 模板类368

14.2.6 调整对话框中控件的尺寸371

14.2.5 将代码集中到一起371

14.2.7 使用TXResizable377

14.3 小结378

15.1 使用Win32 SDK实现打印379

第15章 打印和打印预览379

15.1.1 简单的打印示例程序380

15.1.2 退出打印作业382

15.2.1 打印过程中开发人员和框架的作用387

15.2 用MFC进行打印387

15.2.2 理解MFC打印序列388

15.2.3 “所见即所得”打印示例程序390

15.3.1 打印预览过程394

15.3 打印预览的体系结构394

15.3.3 增强应用程序的打印预览功能395

15.3.2 修改打印预览395

15.4 CPrintDialog类397

15.5 小结398

16.1.2 加载DLL399

16.1.1 动态库和静态库399

第16章 动态链接库399

16.1 DLL概述399

16.2 常规DLL400

16.2.1 创建常规DLL401

16.2.3 实现自己的DllMain函数402

16.2.2 理解常规DLL内核402

16.2.4 动态加载DLL403

16.2.5 编写Windows挂钩函数409

16.2.6 使用DLL的全局C++对象415

16.3 MFC扩展DLL421

16.3.3 导出资源422

16.3.2 通过MFC扩展DLL导出类422

16.3.1 理解MFC扩展DLL内核422

16.3.4 编写在DLL中封装文档和视图的示例程序423

16.4 小结427

17.1 使用线程428

第17章 多线程编程428

17.1.1 创建辅助线程429

17.1.2 编写线程函数431

17.1.3 创建UI线程432

17.1.5 使线程睡眠434

17.1.4 挂起和继续执行线程434

17.1.6 从一个线程终止另一个线程435

17.1.7 线程、进程和优先级438

17.3 多线程示例程序439

17.2 在线程之间共享MFC对象439

17.1.8 进程优先级类439

17.4 小结444

18.1.1 抛出异常445

18.1 异常处理语法445

第18章 MFC异常处理445

18.2 CException类446

18.1.2 捕获异常446

18.2.2 从CException对象中检索错误信息447

18.2.1 创建和删除CException对象447

18.2.3 捕获多种异常类型448

18.3 定义CException派生类449

18.3.1 了解CFileException类450

18.3.2 CFileException示例程序451

18.3.3 定义自己的CException派生类453

18.4.1 确定应该捕获异常的函数456

18.4 高级异常处理技术456

18.4.2 确定放置在try块中的代码457

18.4.3 确定放置在catch块中的代码458

18.4.4 从虚函数中抛出异常459

18.5 小结462

第4部分 数据输入/输出463

19.1.1 为数据分配内存空间464

19.1 使用Windows剪贴板API464

第19章 剪贴板464

19.1.2 把数据复制到全局内存中465

19.1.6 设置剪贴板数据466

19.1.5 清空剪贴板466

19.1.3 解除对全局内存的锁定466

19.1.4 打开剪贴板466

19.2.1 创建SimpleTextTransfer示例程序468

19.2 传递纯文本的示例程序468

19.1.7 关闭剪贴板468

19.2.2 把文本复制到剪贴板上469

19.2.4 粘贴剪贴板上的文本470

19.2.3 把文本剪切到剪贴板上470

19.2.5 测试SimpleTextTransfer示例程序471

19.3.1 创建BitmapTransfer示例程序472

19.3 转移位图图像的示例程序472

19.3.2 粘贴剪贴板中的位图图像473

19.3.4 把位图图像复制到剪贴板上474

19.3.3 对Paste Bitmap按钮的功能进行测试474

19.3.5 测试把位图复制到剪贴板上的功能477

19.4.2 把自定义数据格式复制到剪贴板上478

19.4.1 创建CustomDataTransfer示例程序478

19.4 转移自定义数据的示例程序478

19.4.3 把自定义数据复制到剪贴板上479

19.4.4 从剪贴板上粘贴自定义数据480

19.5 接收剪贴板上内容已被修改的通知消息482

19.4.5 测试CustomDataTransfer示例程序482

19.6 小结487

20.1 ODBC定义和数据库术语488

第20章 ODBC488

20.2.1 ODBC的工作方式490

20.2 ODBC:标准化需求的产物490

20.2.3 ODBC SQL一致性层491

20.2.2 ODBCAPI一致性层491

20.3.1 配置ODBC492

20.3 实现ODBC492

20.3.2 连接数据源493

20.3.4 准备和执行SQL请求495

20.3.3 查询数据和数据源495

20.3.5 检索数据496

20.3.6 断开与数据源的连接497

20.4 使用ODBC获取数据498

20.4.2 为Visual C++项目添加对ODBC的支持499

20.4.1 创建ODBC DSN499

20.4.3 修改ODBCDemo对话框500

20.4.4 添加初始化程序和数据库代码501

20.5 使用ODBC动态查询数据源505

20.5.1 CODBCDynamic类声明506

20.5.2 了解CODBCDynamic类的工作方式507

20.5.3 使用CODBCDynamic类512

20.6 小结513

21.1 CDatabase 对象514

第21章 MFC数据库类514

21.1.1 使用CDatabase∷Open函数515

21.1.2 使用CDatabase∷OpenEx函数516

21.2 CRecordset对象517

21.1.3 事务和CDatabase 对象517

21.2.1 构造记录集522

21.2.3 使用RFX读写数据523

21.2.2 打开记录集523

21.2.4 过滤记录524

21.2.6 使用通配符进行搜索526

21.2.5 对记录集返回的记录进行排序526

21.2.7 在结果集中移动527

21.3 MFC数据库类编程528

21.2.9 删除记录528

21.2.8 保存记录528

21.3.1 UserMaintenance示例程序529

21.3.2 参数化记录集与查询538

21.4 小结547

22.1.1 通用数据访问的基础知识548

22.1 ADO概览548

第22章 ADO548

22.1.2 ADO结构549

22.1.4 ADO类库551

22.1.3 ADO的接口551

22.2.1 导入 ADO类库552

22.2 使用ADO进行编程552

22.2.3 连接数据源554

22.2.2 初始化和结束COM554

22.2.5 执行返回数据的命令556

22.2.4 创建命令556

22.2.6 对数据进行筛选和排序557

22.2.7 遍历记录集559

22.2.8 更新数据560

22.3.1 初始化连接561

22.3 ADO示例程序561

22.3.2 显示用户562

22.3.3 更新用户信息565

22.3.4 添加一些用户界面装饰568

22.4 小结569

23.1 CFile类概览570

第23章 CFile类和文件输入/输出570

23.1.2 打开文件571

23.1.1 实例化CFile 对象571

23.1.4 将数据写入文件573

23.1.3 从文件中读取数据573

23.1.5 定位文件中的数据574

23.2 打开和显示二进制文件575

23.3 使用文本文件578

23.4 以逗号进行分隔的文件类580

23.5 打开和显示CSV文件584

23.6.1 CompressDemo示例程序586

23.6 压缩文件586

23.6.2 CCompressedFile类函数587

23.6.3 剖析CompressDemo示例程序589

23.7 小结591

24.2 XML术语和语法592

24.1 XML概述592

第24章 在Visual C++中使用XML592

24.3 XML DOM简介595

24.4.1 创建VisualC++项目和对话框596

24.4 上载和查看XML文档596

24.4.2 合并XML支持597

24.4.3 上载XML文档598

24.4.4 遍历XML文档599

24.4.5 使用户界面更友好602

24.5 小结604

第5部分 COM605

25.1.1 n层系统606

25.1 基于组件的软件606

第25章 基于接口的程序设计606

25.1.2 接口与实现607

25.1.3 抽象类和接口609

25.1.4 C++的VTBL610

25.2 使用IUnknown611

25.1.5 对象管理611

25.2.1 生命周期管理612

25.2.3 发现身份614

25.2.2 GUID,CLSID和IID614

25.2.4 使HRESULT值616

25.2.5 接口不变性618

25.2.6 接口继承619

25.3 IDL简介621

25.4 小结624

26.1 COM的优势625

第26章 创建和使用组件625

26.2 对象和服务器626

26.3 创建COM对象627

26.4 注册表629

26.4.1 DLL必须输出的函数630

26.4.2 IClassFactory631

26.4.3 使用RegSvr32634

26.5 小结639

27.2 封送处理640

27.1 类型库概述640

第27章 类型库640

27.2.2 IDL,ODL和MkTypeLib642

27.2.1 类型库封送处理642

27.3 C++编译器扩展645

27.3.1 EXE服务器和封送处理648

27.3.2 自定义接口和代理-存根DLL651

27.4 小结652

第6部分 .NET编程653

28.1 .NET概述654

第28章 .NET简介654

28.2 BCL和System名字空间655

28.3.1 MSIL和JITter656

28.3 生成执行代码656

28.3.3 程序集清单数据658

28.3.2 程序集658

28.4 小结659

29.1 开始使用VisualC++660

第29章 编写托管C++代码660

29.2 作为智能域的属性662

29.2.1 定义和使用属性663

29.2.2 编译器真正在做什么665

29.2.3 指定只读、只写和读/写特性666

29.4 用委托作为回调函数667

29.3 委托和事件句柄667

29.2.4 属性的高级用法667

29.5 小结673

30.2 使用线程类创建辅助线程674

30.1 线程概述674

第30章 托管C++的多线程674

30.3 向辅助线程传递数据677

30.4.1 暂停和恢复线程的执行681

30.4 线程的生命周期管理681

30.4.2 退出线程683

30.4.3 结合使用所有方法686

30.5 线程的优先级690

30.6 同步线程694

30.6.1 用Monitor类来保护代码695

30.6.2 用Mutex类来同步代码698

30.7 小结699

31.1 创建第一个Windows Forms程序700

第31章 使用Windows Forms700

31.2 向窗体中添加控件703

31.3 在Windows Forms 应用程序中集成菜单708

31.4 用托管C++编写图像浏览器711

31.5 小结717

热门推荐