《Visual C++使用指南》PDF下载

  • 购买积分:21 如何计算积分?
  • 作  者:(美)Namir Clement Shammas著;王国印,张赤红译
  • 出 版 社:北京:清华大学出版社
  • 出版年份:1995
  • ISBN:7302017948
  • 页数:782 页
图书介绍:

前言页 1

第一部分 Visual C++简介 3

第1章 Visual C++工作平台概述 3

1.1 Visual工作平台的装入 3

1.2 File菜单 4

1.2.1 New命令 5

1.2.2 Open命令 5

1.2.3 Close命令 5

1.2.6 Save All命令 6

1.2.7 Print命令 6

1.2.4 Save命令 6

1.2.5 Save As命令 6

1.2.8 Page Setup命令 8

1.2.9 Exit命令 9

1.3 Edit菜单 9

1.3.1 Undo命令 9

1.3.2 Redo命令 9

1.3.3 Cut命令 10

1.3.4 Copy命令 10

1.3.5 Paste命令 10

1.3.6 Delete命令 10

1.3.7 Find命令 10

1.3.8 Replace命令 15

本书中都包含了哪些内容? 15

本书适合你吗 15

序言 15

1.3.10 Read-Only命令 16

1.4 View菜单 16

1.3.9 Find Match Brace命令 16

1.4.1 Line命令 17

1.4.2 Mixed Source/Asm命令 17

1.4.3 Next Error命令 17

1.4.4 Previous Error命令 17

本书中的约定 18

1.4.5 Toggle Bookmark命令 18

1.4.6 Next Bookmark命令 18

1.4.7 Previous Bookmark命令 18

1.4.8 Clear All Bookmark命令 18

1.4.9 Toolbar命令 19

1.4.10 Status Bar命令 19

1.4.11 Syntax Coloring命令 19

1.5 Projcect菜单 19

1.5.2 New命令 20

1.5.1 AppWizard命令 20

1.5.3 Open命令 22

1.5.4 Edit命令 22

1.5.5 Close命令 23

1.5.6 Compile File命令 23

1.5.7 Build命令 23

1.5.8 Rebuild All命令 23

1.5.9 Stop Build命令 23

1.5.10 Execute命令 23

1.5.11 Scan Dependencies命令 24

1.5.12 Scan All Dependencies命令 25

1.5.13 Load Workspace命令 25

1.5.14 Save Workspace命令 25

1.6 Browse菜单 25

1.6.1 Go to Definition命令 25

1.6.4 Previous命令 26

1.6.3 Next命令 26

1.6.2 Go to Reference命令 26

1.6.5 Pop Context命令 27

1.6.6 Open PRJ.BSC命令 27

1.6.7 Class Wizard命令 27

1.7 Debug菜单 28

1.7.1 Go命令 28

1.7.2 Restart命令 28

1.7.3 Stop Debugging命令 29

1.7.4 Step Into命令 29

1.7.5 Step Over命令 29

1.7.6 Step Out命令 29

1.7.7 Step to Cursor命令 29

1.7.8 Show Call Stack命令 29

1.7.9 Breakpoints命令 29

1.8 Tools菜单 31

1.7.10 QuickWatch命令 31

1.9 Options菜单 32

1.9.1 Project命令 32

1.9.2 Debug命令 34

1.9.3 Directories命令 34

1.9.4 Editor命令 34

1.9.5 Workspace命令 34

1.9.6 Tools命令 34

1.9.7 Color命令 35

1.9.8 Font命令 36

1.10 Window菜单 36

1.10.1 Cascade命令 36

1.10.2 Tile命令 36

1.10.6 Locals命令 37

1.10.5 Watch命令 37

1.10.4 Close All命令 37

1.10.3 Duplicate命令 37

1.10.7 Register命令 38

1.10.8 Output命令 38

1.11 Help菜单 38

1.12 总结 38

第2章 MFC层次结构概述 40

23.1 Windows消息的管理 40

2.1.1 消息的响应 41

2.1.2 消息的发送 42

2.1.3 用户自定义消息 42

2.2 MFC库概述 44

2.3 文档和应用类 45

2.3.1 CWinApp类 46

2.4 窗口支持类 49

2.5 控制类 56

2.5.1 CStatic类 57

2.5.2 CButton类 57

2.5.3 CBitmapButton类 58

2.5.4 CEdit类 59

2.5.5 CHEdit类 60

2.5.6 CBEdit类 60

2.5.7 CScrollBar类 60

2.5.8 CListBox类 61

2.5.9 CComboBox类 62

2.5.10 CVBControl类 64

2.6 对话框类 68

2.7 框架窗口类 68

2.7.1 CFrameWnd类 68

2.7.2 CMDIFrameWnd类 70

2.7.3 CMDIChildWnd类 72

2.8 视类 73

2.9 控制条类 73

2.10 菜单类 73

2.11 图形绘制对象类 75

2.12 图形绘制类 75

2.13 文件事务类 76

2.14 异常处理类 76

2.15 集合类 77

2.16 OLE支持类 77

2.17 ODBC类 77

2.18 各种杂类 78

2.19 简单的MFC例程序 79

2.19.1 最小的MFC程序 79

2.19.2 简单的MFC程序 81

2.20 总结 85

第3章 AppWizard应用程序的使用 87

3.1 最小化程序 87

3.1.1 运行程序APPWIZ1.EXE 91

3.1.2 APPWIZ1.DEF文件 91

3.1.3 RESOURCE.H文件 92

3.1.4 APPWIZ1.H文件 92

3.1.5 STDAFX.H文件 93

3.1.6 MAINFRM.H文件 93

3.1.7 APPWIVW.H文件 94

3.1.8 APPWIDOC.H文件 95

3.1.9 APPWIZ1.RC文件 96

3.1.10 APPWIZ1.RC2文件 100

3.1.11 APPWIZ1.CPP文件 101

3.1.13 MAINFRM.CPP文件 104

3.1.12 STDAFX.CPP文件 104

3.1.14 APPWIVW.CPP文件 105

3.1.15 APPWIDOC.CPP文件 107

3.2 加进工具条和状态条 108

3.2.1 运行APPWIZ2.EXE程序 110

3.2.2 APPWIZ2源文件 110

3.2.3 MAINFRM.H文件 111

3.2.4 APPWIZ2.RC文件 112

3.2.5 MAINFRM.CPP文件 116

3.3 加进打印支持 118

3.3.1 运行APPWIZ3.EXE程序 119

3.3.2 APPWIZ3源文件 121

3.3.3 APPWIVW.H文件 121

3.3.4 APPWIZ2.RC文件 122

3.3.6 APPWIVW.CPP文件 126

3.3.5 APPWIZ3.CPP文件 126

3.4 加进MDI支持 128

3.4.1 运行APPWIZ4.EXE程序 130

3.4.2 APPWIZ4源文件 130

3.4.3 MAINFRM.H文件 131

3.4.4 APPWIZ4.RC文件 132

3.4.5 APPWIZ4.CPP文件 136

3.5 将特性组合起来 139

3.5.1 运行APPWIZ5.EXE程序 139

3.6 总结 140

第4章 ClassWizard应用程序的使用 142

4.1 如何激活ClassWizard应用程序 142

4.2 Message Maps选项 142

4.3 Member Variables选项 143

4.5.1 AppWizard应用程序的使用 144

4.4 Class Info选项 144

4.5 如何往视类中加进成员函数 144

4.5.2 加进成员函数 148

4.5.3 按要求对代码进行修改 152

4.6 文档和视结构 159

4.7 总结 166

第5章 App Sudio应用程序的使用 168

5.1 激活App Studio 168

5.2 修改菜单资源 169

5.3 加进新的对话框资源 184

5.4 创建有格式视(form view) 198

5.5 总结 210

6.1 静态文本控制 213

6.1.1 CStatic类 213

第6章 静态文本控制、按钮控制及编辑控制的使用 213

第二部分 Visual C++程序设计 213

6.1.2 静态文本例子 215

6.2 编辑控制 230

6.2.1 CEdit类 231

6.2.2 和裁剪板有关的编辑函数 232

6.2.3 对编辑控制的查询 232

6.2.4 如何修改编辑控制 234

6.2.5 程序员的计算器 235

6.3 按钮控制 252

6.3.1 CButton类 253

6.3.2 按钮消息 253

6.3.3 如何操纵窗口 254

6.3.4 经过改进的程序员计算器 255

6.4 总结 269

7.1.1 对CButton类和检查框的讨论 270

第7章 成组控制的使用 270

7.1 检查框控制 270

7.1.2 检查框消息的响应 271

7.2 圆形按钮控制 272

7.2.1 对CButton类和圆形按钮的讨论 272

7.2.2 圆形按钮消息的响应 272

7.3 成组控制 272

7.4 被更新了的计算器应用 273

7.5 总结 291

第8章 可滚动控制的使用 292

8.1 滚动条控制 292

8.1.1 CScrollBar类 292

8.1.2 如何响应滚动条通知消息 294

8.1.3 随机数发生器 294

8.2.1 CListBox类 308

8.2 列表框控制 308

8.2.2 如何响应列表框通知消息 312

8.2.3 一个简单的列表操作测试程序 313

8.3 多重选择列表框 326

8.3.1 多重选择列表框测试程序 326

8.4 组合框控制 338

8.4.1 CComboBox类 339

8.4.2 如何响应组合框通知消息 342

8.4.3 作为记事列表框使用的组合框 343

8.5 程序员计算器的第4个版本 343

8.5.1 COCA应用的代码 359

8.6 总结 362

第9章 对话框的使用 364

9.1 对话框的创建 364

9.2.1 OnInitDialog函数 365

9.2 执行有模式对话框 365

9.2.2 OnOK函数 366

9.2.3 OnCancel函数 366

9.3 简单有模式对话框的使用 366

9.4 将对话框作为窗口来使用 371

9.5 控制数据的传送 381

9.5.1 基础知识 381

9.5.2 数据传送机制 385

9.5.3 CDataExchange类 385

9.6 简单有模式对话框的数据传送 386

9.7 复杂有模式对话框的数据传送 393

9.8 不用DoDataExchange所进行的对话框数据传送 402

9.9 使用简单无模式对话框所进行的数据传送 405

9.10 总结 416

第10章 公用对话框的使用 417

10.1 软件要求 417

10.2 CColorDialog类 417

10.2.1 支持类和数据结构 418

10.2.2 Clolor对话框的激活 419

10.2.3 CColorDialog的辅助函数的使用 420

10.2.4 测试CColorDialog类 420

10.3 CFontDialog类 423

10.3.1 支持类和数据结构 423

10.3.2 CFontDialog的辅助函数的使用 426

10.3.3 测试CFontDialog类 426

10.4 CPrintDialog类 430

10.4.1 支持的数据结构和类 431

10.4.4 测试CPrintDialog类 434

10.4.3 Print和Setup对话框的激活 434

10.4.2 CPrintDialog的辅助函数的使用 434

10.5 CFileDialog类 439

10.5.1 支持类和数据结构 439

10.5.2 如何激活File对话框 442

10.5.3 如何使用CFileDialog辅助函数 443

10.5.4 测试CFileDialog类 443

10.6 CFindReplaceDialog类 447

10.6.1 支持类和数据结构 449

10.6.2 如何通知父窗口 451

10.6.3 如何使用CFindReplaceDialog类的辅助函数 451

10.6.4 测试CFindReplaceDialog类 452

10.7 总结 457

第11章 工具条和状态条的使用 461

11.1 CToolBar类 461

第三部分 高级Visual C++程序设计 461

11.2 工具条编程指南 464

11.3 一个工具条应用程序 464

11.4 CStatusBar类 477

11.5 应用程序状态条编程指南 479

11.6 一个使用状态条的示例性程序 480

11.7 总结 493

第12章 MDI窗口的使用 494

12.1 了解MDI应用程序:特征及组成 494

12.2 CMDIFrameWnd类的定义 495

12.3 创建MDI框架窗口 496

12.4 CMDIChildWnd类的定义 497

12.5 创建MDI子窗口 498

12.6 管理MDI消息 498

12.7 使用系统文件阅读器 498

12.7.2 MDI框架类 506

12.7.1 应用程序类 506

12.7.3 MDI子窗口类 508

12.8 使用时钟的MDI程序 509

12.8.1 MDI子窗口类 519

12.8.2 MDI框架窗口类 520

12.9 总结 521

第13章 Visual Basic控制的使用 523

13.1 了解VBX控制的特性、方法及事件 523

13.2 定义CVbControl类 523

13.3 针对VBX控制使用AppWizard和ClassWizard 528

13.4 在App Studio中安装VBX控制 528

13.5 使用栅格VBX控制 529

13.5.1 关于VBTABLE.EXE程序 530

13.5.3 如何建立VBTABLE.EXE程序 531

13.5.2 有关的栅格特性和方法 531

13.5.4 VBTABLE项目中未改动过的文件 549

13.6 总结 552

第14章 CString类和集合类的使用 553

14.1 CString类 553

14.1.1 构造函数 555

14.1.2 存取函数 556

14.1.3 赋值运算等 557

14.1.4 特征函数 557

14.1.5 连接运算符 557

14.1.6 串比较函数 558

14.1.7 串析取函数 559

14.1.8 字符转换函数 559

14.1.9 搜索函数 560

14.1.10 测试CString类 561

14.2 数组类 572

14.2.1 CStringArray类 573

14.2.2 其它数组类 574

14.2.3 CStringArray类的测试 575

14.3 表类 585

14.3.1 CStringList类 585

14.3.2 测试CStringList类 588

14.4 映射类 598

14.4.1 CMapStringToString类 598

14.4.2 测试CMapStringToString类 600

14.5 总结 610

第15章 异常处理类的使用 611

15.1 Visual C++异常处理 611

15.1.1 Visual C++异常处理语法 611

15.2 CException类 613

15.1.3 如何进入异常处理 613

15.1.2 MFC异常处理类 613

15.3 CMemoryException类 614

15.4 CMemoryException类的测试 615

15.5 CFileException类 618

15.6 测试CFileException类 620

15.6.1 对话框类 626

15.6.2 主窗口类 627

15.7 CArchiveException类 628

15.8 CResourceException类 629

15.9 测试CResourceException类 630

15.10 CUserException类 637

15.11 测试CUserException类 637

15.12 CNotSupportedException类 644

15.13 COleException类 644

15.14 总结 645

16.1 检验Browse菜单 647

第16章 工作平台Browse窗口的使用 647

16.2 浏览宏 649

16.2.1 afx_msg宏 649

16.2.2 BEGIN_MESSAGE_MAP宏 650

16.2.3 CM_EXIT宏 651

16.2.4 MB_ok宏 652

16.2.5 NULL宏 652

16.3 浏览数据类型 653

16.3.1 BOOL数据类型 654

16.3.2 RECT数据类型 654

16.4 浏览变量 655

16.5 使用Call Graph特性 657

16.5.1 成员函数CMCalc 657

16.5.2 成员函数setDecimal 658

16.6 使用Caller Graph特性 659

16.5.3 成员函数getVar 659

16.6.1 成员函数CMCalc 660

16.6.2 成员函数setDecimal 660

16.6.3 成员函数getVar 660

16.7 使用Base Class Graph特性 661

16.7.1 CMainWEnd类 661

16.7.2 CxEdit类 661

16.7.3 CxButton类 663

16.8 使用Derived Class Graph特性 663

16.9 总结 664

第17章 工作平台调试器的使用 665

17.1 Debug菜单命令回顾 665

17.2 检验硬调试模式和软调试模式 666

17.3. 设置断点 666

17.3.1 了解各种断点 667

17.4 调试CTLLST4.EXE程序 668

17.3.2 检验断点位置的格式 668

17.5 使用无条件断点 684

17.6 使用带表达式的断点 686

17.7 查看调用栈 687

17.8 查阅混合的源码/汇编码 688

17.9 管理Watch窗口 689

17.9.1 增加表达式 689

17.9.2 删除表达式 689

17.9.3 变量的展开和收缩 689

17.10 总结 689

第四部分 高级Visual C++工具 693

第18章 Spy应用程序的使用 693

18.1 Spy工具简介 693

18.2 检测Spy菜单 694

18.3 检测Window菜单 694

18.4 检测Options!菜单 695

18.5 探查APPSTUD2.EXE程序 696

18.5.1 监视鼠标消息 697

18.5.2 监视输入消息 698

18.5.3 监视窗口消息 701

18.6 监视按钮输入消息 701

18.7 总结 702

第19章 Stress应用程序的使用 704

19.1 如何调出Stress应用程序 704

19.2 Settings菜单 704

19.2.1 Fixed Settings命令 705

19.2.2 Executer命令 705

19.2.3 Log Settings命令 706

19.3.3 Free All命令 707

19.3.2 End Executer命令 707

19.3.1 Begin Executer命令 707

19.3 Options菜单 707

19.3.4 Move to Corner命令 708

19.3.5 Put Back命令 708

19.3.6 Repaint Screen命令 708

19.4 监测APPSTUD2.EXE程序 708

19.5 总结 714

附录A ASCII码和扩展的ASCII码 715

附录B 控制资源代码 723

B.1 建立菜单资源 723

B.2 检验对话框资源 725

B.3 检验DIALOG任选项语句 726

B.3.1 STYLE语句 726

B.3.2 CAPTION语句 726

B.3.3 MENU语句 726

B.4 检验对话框控制资源 727

B.4.1 通用CONTROL资源 727

B.3.4 CLASS语句 727

B.3.5 FONT语句 727

B.4.2 LTEXT语句 729

B.4.3 RTEXT语句 729

B.4.4 CTEXT语句 729

B.4.5 CHECKBOX语句 729

B.4.6 PUSHBUTTON语句 730

B.4.7 DEFPUSHBUTTON语句 730

B.4.8 LISTBOX语句 730

B.4.9 GROUPBOX语句 730

B.4.10 RADIOBUTTON语句 731

B.4.11 EDITTEXT语句 731

B.4.12 COMBOBOX语句 731

B.4.13 SCROLLBAR语句 732

附录C 高级MFC类 733

C.1 对话框类 733

C.1.1 CDialog类 733

C.1.2 CFileDialog类 735

C.1.3 CColorDialog类 736

C.1.4 CFontDialog类 737

C.1.5 CPrintDialog类 738

C.1.6 CFindReplaceDialog类 739

C.2 视类 740

C.2.1 CView类 740

C.2.2 CScrollView类 742

C.2.3 CFormView类 743

C.2.4 CEditView类 744

C.3.1 CControlBar类 746

C.3 控制条类 746

C.3.2 CToolBar类 747

C.3.3 CStatusBar类 748

C.3.4 CDialogBar类 750

C.3.5 CSplitterWnd类 750

C.4 集合类 752

C.4.1 数组类 753

C.4.2 列表类 754

C.4.3 映射类 755

附录D 从OWL2向MFC2的移植 757

D.1 转换的一般性评述 757

D.2 类的转换 757

D.3 消息映射宏的转换 758

D.4 一个简单程序 760

D.5 一个实用的程序 763

作者简介 782