MFC应用开发教程PDF电子书下载
- 电子书积分:19 积分如何计算积分?
- 作 者:(美)(V.布罗奎德)Vic Broquard著;汪泳等译
- 出 版 社:北京:清华大学出版社
- 出版年份:1999
- ISBN:7900622276
- 页数:655 页
第1章 字体初步 1
简介 1
目录 1
1.2 库存字体 1
1.1 使用注册表浏览已安装的字体 1
软件要求 2
1.3 物理设备及其规格 3
一些可以查询的其他资源 3
配套光盘上的例子程序 3
在发行版5.0中有哪些新的东西 3
1.4 字体规格 4
1.5 向屏幕和打印机输出绘制文本的函数 10
1.5.1 DrawText函数 10
1.5.2 TabbedTextOut函数 11
1.5.3 TextOut函数 12
1.5.4 ExtTextOut函数 12
1.6 文本格式化函数 13
1.6.1 设置并获取背景模式 13
1.6.2 设置并获取背景色 14
1.6.4 设置并获取文本对齐标准 15
1.6.3 设置并获取文本颜色 15
1.6.5 使用文本调整 18
1.6.6 字符间距 19
1.7 示例程序Pgm01a 19
1.7.1 文件清单:FrameWin.h—Pgm01a 19
1.7.2 文件清单(摘录):FrameWin.cpp—Pgm01a 20
1.8 设计单位——一种供选择的量制 24
1.9 创建字体 25
1.9.1 LOGFONT结构 27
1.9.2 字体匹配或实现 29
1.9.3 指定磅值大小的方法 30
1.9.4 字体匹配处理 31
1.10 Pgm01b——字体映射示例 33
1.10.1 文件清单(摘录):Pgm1BApp.cpp—Pgm01b 34
1.10.2 文件清单(摘录):FrameWin.h—Pgm01b 35
1.10.3 文件清单(摘录):FrameWin.cpp—Pgm01b 38
1.10.4 文件清单(摘录):Pgm1b.rc—Pgm01b 41
1.10.5 文件清单(摘录):LogfontDlg.h—Pgm01b 42
1.10.6 文件清单(摘录):LogfontDlg.cpp—Pgm01b 45
2.1 简介 49
第2章 使用字体 49
2.2 Choose Fonts通用对话框——CFontDialog 50
2.3 Windows 95和Windows NT内存分配 52
2.4 在Windows下的文件处理 54
2.4.1 长文件名 54
2.4.2 文件处理原则 56
2.4.3 使用Windows文件函数 56
2.5 CFileDialog的实现 60
2.6 使用多行编辑控件——CEdit 62
2.7 演示Choose Fonts通用对话框和CEdit控件的使用的样例程序——Pgm02a 64
2.6.1 CEdit控件提供的编辑特征 64
2.7.1 文件清单(摘录):Pgm02a.rc—Pgm02a 66
2.7.2 文件清单(摘录):resource.h—Pgm02a 67
2.7.3 文件清单(摘录):FrameWin.h—Pgm02a 68
2.7.4 文件清单(摘录):FrameWin.cpp—Pgm02a 70
2.8 字体枚举函数 75
2.8.1 判别系统平台 75
2.8.2 Windows 95字体枚举函数 75
2.8.3 Windows NT字体枚举函数 77
2.8.4 样例程序Pgm02b 77
2.8.5 文件清单(摘录):FrameWin.h—Pgm02b 78
2.8.6 文件清单(摘录):FrameWin.cpp—Pgm02b 80
2.9 使用CListCtrl构造一个有用的字体枚举控件 84
2.9.1 文件清单(摘录):FrameWin.cpp—Pgm02c 86
2.9.2 文件清单(摘录):FontEnumDlg.h—Pgm02c 87
2.9.3 文件清单(摘录):FontEnumDlg.cpp—Pgm02c 91
第3章 缩放方法和映射模式 95
3.1 映射模式——视口和窗口坐标 95
3.2 改变原点 96
3.3 改变范围或缩放比例 97
3.4 映射模式和舍入误差 98
3.5 计算磅值大小和Choose Fonts通用对话框 99
3.6 构造标尺 101
3.6.1 文件清单(摘录):RulerWin.h—Pgm03a 101
3.6.2 文件清单(摘录):RulerWin.cpp—Pgm03a 102
3.7 Pgm03a和文本显示方法 106
3.7.1 文件清单(摘录):FrameWin.h—Pgm03a 106
3.7.2 文件清单(摘录):FrameWin.cpp—Pgm03a 108
3.8 使用系统注册表 117
3.8.1 文件清单(摘录):IntermediateMFC.Reg 120
4.1.1 打印方法1:使用Screen Paint函数打印图文混排的页面 121
第4章 关于打印的基础内容 121
4.1 基本的打印方法 121
4.1.2 打印方法2:打印多页文档或打印报表 122
4.2 调整页面大小 122
4.3 使用字体 122
4.4 后台打印过程 123
4.5 Pgm04a——打印方法1——使用一个两用画图函数 123
4.5.1 文件清单(摘录):Pgm04a.rc—Pgm04a 124
4.5.2 文件清单(摘录):PrintDlg.h—Pgm04a 125
4.5.3 文件清单(摘录):PrintDlg.cpp—Pgm04a 126
4.5.4 文件清单(摘录):FrameWin.h—Pgm04a 127
4.5.5 文件清单(摘录):FrameWin.cpp—Pgm04a 128
4.6 修改Print对话框中的数据 138
4.7 MFC的打印序列 139
4.8 通过PrintPage而不是OnPaint直接打印 140
4.9 打印情况1(Pgm04b) 140
4.10 创建一个程序文本编辑器(带有打印支持)—Pgm04b 141
4.10.1 文件清单(摘录):Pgm04b.rc—Pgm04b 141
4.10.2 文件清单(摘录):FontEnumDlg.h—Pgm04b 142
4.10.4 PRINTDLG结构的部分清单 143
4.10.3 文件清单(摘录):FontEnumDlg.cpp—Pgm04b 143
4.10.5 文件清单(摘录):FrameWin.h—Pgm04b 148
4.10.6 文件清单(摘录):FrameWin.cpp—Pgm04b 151
第5章 文档-视图体系结构和打印预览 172
5.1 简介 172
5.2 应用程序设计 172
5.2.1 打印情况#2(Pgm05a) 175
5.3 Pgm05a的文档-视图实现 176
5.3.1 设计一个可串行化的SalesData类 176
5.3.2 文件清单(摘录):SalesDat.h—Pgm05a 177
5.3.3 文件清单(摘录):SalesData.cpp—Pgm05a 178
5.4 MFC文件处理:CFile类 181
5.5 MFC文档视图实现 183
5.5.1 文件清单(摘录):AcmeDoc.h—Pgm05a 183
5.5.2 文件清单(摘录):AcmeDoc.cpp—Pgm05a 186
5.6 Pgm05a和应用程序以及框架窗口的资源文件 190
5.6.1 文件清单(摘录):Pgm05a.rc—Pgm05a 191
5.6.2 文件清单(摘录):resource.h—Pgm05a 194
5.7 应用程序类—Pgm05aApp 195
5.8 重新查看系统注册表 196
5.8.1 文件清单(摘录):Pgm5aApp.cpp—Pgm05a 197
5.9 主窗口类—FrameWin 198
5.9.1 文件清单(摘录):FrameWin.h—Pgm05a 198
5.9.2 文件清单(摘录):FrameWin.cpp—Pgm05a 199
5.10 窗口的附加修饰 202
5.10.1 用MFC实现窗口修饰 202
5.10.2 构造控制栏和状态栏 203
5.11 CView类:AcmeView和AcmePlot 206
5.11.1 文件清单(摘录):AcmeView.h—Pgm05a 208
5.11.2 文件清单(摘录):AcmeView.cpp—Pgm05a 213
5.12 AcmeView的打印和打印预览处理 225
5.13 AcmePlot视图类 229
5.13.1 文件清单(摘录):AcmePlot.h—Pgm05a 229
5.13.2 文件清单(摘录):AcmePlot.cpp—Pgm05a 233
5.14 在多文档界面中使用文档视图—Pgm05b 239
5.14.1 文件清单(摘录):Pgm5bApp.cpp—Pgm05b 239
5.14.2 文件清单(摘录):FrameWin.h—Pgm05b 241
5.14.3 文件清单(摘录):FrameWin.cpp—Pgm05b 241
5.14.4 文件清单(摘录):ChildWin.h—Pgm05b 242
5.14.5 文件清单(摘录):ChildWin.cpp—Pgm05b 242
5.14.6 文件清单(摘录):Pgm05b.rc—Pgm05b 243
第6章 所见即所得——词的换行和对齐 245
6.1 所见即所得的原则 245
6.1.1 打印情况#3(Pgm06a) 246
6.2 把文档类作为当前打印机的储存库 246
6.3 使用CScrollView类 247
6.4 示例程序Pgm06a——文本文件的所见即所得浏览器 248
6.4.1 文件清单(摘录):Pgm06a.rc—Pgm06a 249
6.4.2 文件清单(摘录):Pgm6aApp.h—Pgm06a 253
6.4.3 文件清单(摘录):Pgm6aApp.cpp—Pgm06a 253
6.4.4 文件清单(摘录):FrameWin.h—Pgm06a 257
6.4.5 文件清单(摘录):FrameWin.cpp—Pgm06a 258
6.4.6 文件清单(摘录):EditDoc.h—Pgm06a 258
6.4.7 文件清单(摘录):EditDoc.cpp—Pgm06a 260
6.4.8 文件清单(摘录):EditView.h—Pgm06a 264
6.4.9 文件清单(摘录):EditView.cpp—Pgm06a 273
第7章 打印位图图像和处理颜色调色板 297
7.1 位图和DIB的比较 297
7.2 BitBlt 297
7.3 创建内存DC 299
7.5 DIB和颜色调色板 301
7.4 用户改变显示器设置的影响 301
7.5.1 文件清单(摘录):CDib.h—Pgm07a 304
7.5.2 文件清单(摘录):CDib.cpp—Pgm07a 305
7.6 处理颜色——调色板 313
7.7 显示DIB图像的方法 318
7.7.1 SetDIBitsToDevice方法 318
7.7.2 StretchDIBits方法 318
7.7.3 构造内存DC的两种方法 319
7.7.4 为游戏动画构造高速内存DC的DIB区域方法 320
7.8 灰度转换 325
7.9 位图打印及颜色调整指南 326
7.10 在打印机上缩放DIB 328
7.11 Pgm07a——打印BMP文件 328
7.11.1 打印情况#4(Pgm07a) 330
7.11.2 文件清单(摘录):BmpDoc.h—Pgm07a 338
7.11.3 文件清单(摘录):BmpDoc.cpp—Pgm07a 338
7.11.4 文件清单(摘录):BmpView.h—Pgm07a 342
7.11.5 文件清单(摘录):BmpView.cpp—Pgm07a 344
7.12 注册表的含义 360
8.1 外部Access数据库 361
第8章 使用DAO进行数据报表打印 361
8.2 Pgm08a中用的DAO类 362
8.3 用App Wizard建立DAO框架 364
8.4 在Pgm08a中实现5个CDaoRecordSet类 369
8.4.1 文件清单(摘录):DAOSales.h—Pgm08a 369
8.4.2 文件清单(摘录):DAOSales.cpp—Pgm08a 370
8.5 添加、更新和删除记录,剪贴板里的用户定义数据 371
8.5.1 文件清单(摘录):SalesView.h—Pgm08a 372
8.5.2 文件清单(摘录):SalesView.cpp—Pgm08a 374
8.5.3 文件清单(摘录):SalesDoc.h—Pgm08a 382
8.5.4 文件清单(摘录):SalesDoc.cpp—Pgm08a 383
8.6 使用5个记录集合,通过种类和项目累计总销售额——动态分配二维数组 384
8.6.1 文件清单(摘录):SalesView.cpp—Pgm08a 385
8.7 Pgm08a的打印操作 392
8.7.1 打印情况#5(Pgm08a) 392
8.7.2 文件清单(摘录):Pgm08a.cpp 393
8.7.3 文件清单(摘录):SalesView.cpp—Pgm08a 393
第9章 使用CTreeCtrl和ClistCtrl类处理DAO数据库中的数据 406
9.1 Access War数据库 406
9.2 Pgm09a的资源、应用程序和框架窗口类 410
9.2.2 文件清单(摘录):Pgm09a.rc—Pgm09a 412
9.2.1 文件清单(摘录):resource.h—Pgm09a 412
9.2.3 文件清单(摘录):FrameWin.h—Pgm09a 414
9.2.4 文件清单(摘录):FrameWin.cpp—Pgm09a 415
9.3 ChooseLandObjects对话框 417
9.3.1 文件清单(摘录):ChooseLandObjects.h—Pgm09a 417
9.4 树形控件和列表控件结构的细节 420
9.5 CTreeCtrl类的细节 423
9.6 CListCtrl类的细节 426
9.6.1 文件清单(摘录):ChooseLandObjects.cpp—Pgm09a 429
9.7.1 文件清单(摘录) :DBLandNodeOName.h—Pgm09a 444
9.7 在Pgm09a中的一些DAO类 444
9.7.2 文件清单(摘录):DBLandNodeOName.cpp—Pgm09a 445
9.7.3 文件清单(摘录):DBLandNodeQueryFwd.h—Pgm09a 446
9.7.4 文件清单(摘录):DBLandNodeQueryFwd.cpp—Pgm09a 447
第10章 深入了解控件、对话栏和工具栏 450
10.1 基本工具栏——使用CToolBar类 450
10.2 创建浮动调色板——从CToolBar中派生 453
10.2.1 文件清单(摘录):PaletteBox.cpp—Pgm10a 453
10.3 处理状态栏 455
10.4 动态获取状态栏或者主工具栏指针 456
10.5 编辑栏——在工具栏中放置组合框 457
10.5.1 文件清单(摘录):EditBar.h—Pgm10a 460
10.5.2 文件清单(摘录):EditBar.cpp—Pgm10a 461
10.5.3 文件清单(摘录):FontnumCBox.h—Pgm10a 465
10.5.4 文件清单(摘录):FontEnumCBox.cpp—Pgm10a 466
10.6 使用CDialogBar 470
10.6.1 OptionsBar 470
10.6.2 文件清单(摘录):OptionsBar.h—Pgm10a 472
10.6.3 文件清单(摘录):OptionsBar.cpp—Pgm10a 472
10.6.4 MapLocalStatsBar——在CDialogBar文本控件中显示信息 473
10.6.5 文件清单(摘录):MapLocalStatsBar.h—Pgm10a 474
10.6.6 文件清单(摘录):MapLocalStatsBar.cpp—Pgm10a 475
10.7 使用私有ini文件 477
10.8 MapControlBar——综合应用文本和CBitmapButton 480
10.8.1 文件清单(摘录):MapControlBar.h—Pgm10a 482
10.8.2 文件清单(摘录):MapControlBar.cpp—Pgm10a 483
10.9 控制三个对话栏的初始位置 485
10.10 用系统注册表存储并恢复工具栏状态 486
10.11 存储并恢复主窗口位置 487
10.12 GeoDoc和GeoView类 489
第11章 复杂的文档处理 491
11.1 打开文档文件的框架动作 491
11.2 Pgmlla第一次运行的配置工作 498
11.3 头数据类 499
11.3.1 文件清单(摘录):HeadData.h—Pgm11a 499
11.3.2 文件清单(摘录):HeadData.cpp—Pgm11a 500
11.4 Pgm11a的资源和应用程序类 503
11.4.1 文件清单(摘录):Pgm11a.rc 503
11.4.2 文件清单(摘录):Pgm11a.h 507
11.4.3 文件清单:Pgm11a.cpp 508
11.5 主要的颜色调色板 509
11.5.1 文件清单(摘录):Palette.h—Pgm11a 509
11.6 MainFrame类 510
11.6.1 文件清单(摘录):MainFrame.h—Pgm11a 510
11.6.2 文件清单(摘录):MainFrame.cpp—Pgm11a 511
11.7 HeadDoc和HeadView类 514
11.7.1 文件清单(摘录):HeadDoc.h—Pgm11a 515
11.7.2 文件清单(摘录):HeadDoc.cpp—Pgm11a 515
11.7.3 文件清单(摘录):HeadFrame.cpp—Pgm11a 524
11.7.5 文件清单(摘录):HeadView.cpp—Pgm11a 525
11.7.4 文件清单(摘录):HeadView.h—Pgm11a 525
11.8 ControlDoc和ControlView类 526
11.8.1 文件清单(摘录):ControlDoc.h—Pgm11a 527
11.8.2 文件清单(摘录):ControlDoc.cpp—Pgm11a 531
11.9 屏幕外缓冲区类 539
11.9.1 文件清单(摘录):BitmapDC.h—Pgm11a 540
11.9.2 文件清单(摘录):BitmapDC.cpp—Pgm11a 541
11.10 GameDoc和GameFrame类 544
11.10.1 文件清单(摘录):GameDoc.h—Pgm11a 544
11.10.2 文件清单(摘录):GameDoc.cpp—Pgm11a 546
11.10.3 文件清单(摘录):GameFrame.cpp—Pgm11a 549
11.11 GameView,PlayerView和OtherView类 550
11.11.1 文件清单(摘录):GameView.h—Pgm11a 550
11.11.2 文件清单(摘录):GameView.cpp—Pgm11a 552
11.11.3 文件清单(摘录):PlayerView.h—Pgm11a 556
11.11.4 文件清单(摘录):PlayerView.cpp—Pgm11a 557
11.11.5 文件清单(摘录):OtherView.h—Pgm11a 562
11.11.6 文件清单(摘录):OtherView.cpp—Pgm11a 563
第12章 增强型元文件和打印 565
12.1 运行中的Pgm12a程序 566
12.2 构造增强型元文件的整体设计原则 567
12.3 在增强型元文件中使用字体 574
12.4 用CMetaFileDC生成一个增强型元文件 576
12.5 避免绘图过程中潜在的问题 578
12.6 坐标映射和世界坐标转换 579
12.7 Pgm12a的实现 581
12.7.1 文件清单(摘录):Pgm12a.rc 581
12.7.2 Pgm12a的文档类—GraphDoc 582
12.7.3 文件清单(摘录):Function.h—Pgm12a 585
12.7.4 文件清单(摘录):Function.cpp—Pgm12a 588
12.7.5 文件清单:SincFunction.h—Pgm12a 592
12.7.6 文件清单(摘录):SincFunction.cpp—Pgm12a 593
12.7.7 文件清单(摘录):GraphDoc.h—Pgm12a 598
12.7.8 文件清单(摘录):GraphDoc.cpp—Pgm12a 601
12.7.9 GraphView类 607
12.7.10 文件清单(摘录):GraphView.h—Pgm12a 608
12.7.11 文件清单(摘录):GraphView.cpp—Pgm12a 609
12.8 打印增强型元文件 616
13.2 Internet MFC类 617
13.1 在应用程序中增加E-mail支持 617
第13章 介绍Internet类——生成具有下载功能的FTP文件浏览器 617
13.3 CInternetSession的详细说明 618
13.4 CFtpConnection类 620
13.5 CFtpFindFile类 621
13.6 Pgm13a——FTP浏览器和文件下载程序 622
13.7 Pgm13a的实现——FTP浏览器 624
13.7.1 文件清单(摘录):URLToolBar.h 624
13.7.2 文件清单(摘录):URLToolBar.cpp 625
13.8 View类和ClistCtrl类 626
13.7.3 文件清单(摘录):URLEdit.cpp 626
13.9 SiteList(CListCtrl)类 627
13.9.1 文件清单(摘录):SiteList.h 628
13.9.2 文件清单(摘录):SiteList.cpp 629
13.10 FTPView类 632
13.10.1 文件清单(摘录):FTPView.h 632
13.10.2 文件清单(摘录):FTPView.cpp 633
13.11 改进浏览器 645
附录A 字体的基本术语 647
附录B Windows的新的堆内存函数 652
附录C 如何使用本书配套光盘 654
- 《钒产业技术及应用》高峰,彭清静,华骏主编 2019
- 《高级英语阅读与听说教程》刘秀梅编著 2019
- 《现代水泥技术发展与应用论文集》天津水泥工业设计研究院有限公司编 2019
- 《看图自学吉他弹唱教程》陈飞编著 2019
- 《激光加工实训技能指导理实一体化教程 下》王秀军,徐永红主编;刘波,刘克生副主编 2017
- 《AutoCAD 2019 循序渐进教程》雷焕平,吴昌松,陈兴奎主编 2019
- 《少儿电子琴入门教程 双色图解版》灌木文化 2019
- 《英汉翻译理论的多维阐释及应用剖析》常瑞娟著 2019
- 《Photoshop CC 2018基础教程》温培利,付华编著 2019
- 《数据库技术与应用 Access 2010 微课版 第2版》刘卫国主编 2020
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019