Windows 3.1编程指南PDF电子书下载
- 电子书积分:15 积分如何计算积分?
- 作 者:(美)法雷尔(Farrell,Tim),(美)康内利(Connally,Runnoe)编著;李 莉等译
- 出 版 社:北京:清华大学出版社
- 出版年份:1994
- ISBN:730201499X
- 页数:494 页
目录 1
第一部分 开发工具及其概念 1
第1章 Windows编程准备 1
1.1 硬件要求 1
1.2 软件要求 2
1.3 Windows概述 2
1.3.1 Windows与DOS的比较 3
1.3.2 Windows接口 4
1.3.3 Windows库 5
1.3.4 开发工具与实用程序 5
1.3.5 建议 7
1.3.6 Windows环境小结 8
1.4 Windows编程的目录结构 8
1.4.1 子目录WINDOWSWIN 9
1.4.2 子目录WINDOWSBIN 10
1.4.3 子目录WINDOWSLIB 10
1.4.4 子目录WINDOWSDEBUG 11
1.5 安装Windows开发环境 11
1.5.1 安装Windows 12
1.5.2 安装Microsoft C 12
1.5.3 安装软件开发工具(SDK) 13
1.6 优化Windows开发环境 14
1.6.1 减小Windows.h的大小增加编译速度 14
1.6.2 以Windows为开发环境配置系统 14
1.6.3 设置.PIF文件 15
1.6.4 WIN.INI设置 15
1.7 测试与调试 16
1.6.5 SYSTEM.INI设置 16
1.7.2 在单监视器上使用CodeView 17
1.7.3 为调试设置一单色监视器 17
1.8 本章小结 17
1.7.1 为CodeView设置一个调试终端 17
第2章 开发工具的使用 19
2.1 用Microsoft C编译源代码 19
2.1.1 为Windows函数使用Windows.h 20
2.1.2 选择内存模式和浮点库 20
2.1.3 为Windows使用Pascal调用约定 20
2.1.4 在Windows C应用程序中使用WinMain() 21
2.1.5 回调函数 21
2.1.6 使用Windows的C运行库函数 22
2.2 编译Windows C应用程序 23
2.1.7 浮点库与Windows 23
2.1.8 使用环境和命令行参数 23
2.2.1 使用MASM编译汇编文件 25
2.3 使用LINK连接应用程序 27
2.3.1 一个简单的模块定义文件 27
2.3.2 一个复杂的模块定义文件 29
2.3.3 使用LINK产生Windows应用程序 30
2.3.4 使用语句ICON 33
2.3.5 用STRINGTABLE定义字符串表 33
2.3.6 使用语句DIALOG 33
2.3.7 使用语句MENU 34
2.3.8 运行资源编译器 36
2.4 用NMAKE维护应用程序 37
2.5 本章小结 38
第3章 Windows编程模式 39
3.1 对象和对象编程 39
3.2 句柄 40
3.2.1 实例 41
3.3 消息与事件 43
3.4 多任务 46
3.4.1 MS-DOS与Windows 47
3.1 的合作多任务 47
3.4.2 Windows NT 48
3.5 内存管理——Windows风格 48
3.6 资源 50
3.7.1 显示描述表(DC) 52
3.7 图形设备接口(GDI) 52
3.7.2 位图 53
3.7.3 裁剪 54
3.7.4 映射 55
3.8 本章小结 56
第4章 Windows风格指南:窗口和菜单 57
4.1 规则与方法 57
4.2 基本输入元素 58
4.2.1 鼠标器输入 58
4.2.2 键盘输入 59
4.3 图形用户接口技术概要 63
4.3.1 选择 63
4.3.2 控制焦点 67
4.3.3 移动 68
4.3.4 拖放 69
4.3.5 给用户提供反馈 70
4.3.6 编辑控制框 73
4.3.7 绘图 74
4.4 窗口 76
4.4.1 应用程序窗口 76
4.4.2 文本窗口(多文本窗口) 77
4.4.3 窗口的组成 79
4.4.4 基本的窗口操作 83
4.5 菜单 87
4.5.1 下拉式菜单 87
4.5.2 弹出式菜单 87
4.5.3 级联式菜单 88
4.5.4 菜单的组成 89
4.5.5 菜单操作 91
4.5.6 标准菜单 92
4.5.7 常用的可选菜单 97
4.6 本章小结 99
第5章 Windows风格指南:对话框 100
5.1 对话框中的控制 100
5.1.1 按钮 100
5.1.2 复选框 102
5.1.3 列表框 103
5.1.4 编辑控制 105
5.1.5 只读弹出式文字域 107
5.1.9 控制标签 108
5.1.8 分组框 108
5.1.7 静态文字域 108
5.1.6 滑动条 108
5.2 使用对话框 109
5.2.1 对话框的类型 109
5.2.2 对话框中的按钮 112
5.2.3 对话框中的字体 114
5.3 标准对话框 114
5.3.1 文件操作 114
5.3.2 打印 118
5.3.3 文字搜索和替换 120
5.3.4 拼写 122
5.3.5 字符特性 123
5.3.6 边界对话框 125
5.3.8 About对话框 126
5.3.7 Page Setup对话框 126
5.4 其它问题 127
5.4.1 装载和初始化 127
5.4.2 用户等级和定制 127
5.4.3 帮助 128
5.4.4 国际化考虑 128
5.5 本章小结 129
第二部分 建立Windows应用程序 130
第6章 建立程序Editor:基础 130
6.1 用NMAKE编译应用程序 131
6.1.1 生成资源文件EDIT.RC 132
6.1.2 生成头文件edit.h 132
6.1.3 生成模块定义文件EDIT.DEF 133
6.1.4 生成图标文件ICON.ICO 134
6.1.5 变量命名约定 135
6.1.6 生成C源文件EDIT.C 136
6.2 从WinMain()开始执行 139
6.2.1 使用ghInstance和ghPrev-Instance参数 140
6.2.2 登记窗口类 142
6.2.3 生成一个覆盖窗口 143
6.2.4 用ShowWindow()显示一个窗口 144
6.2.5 生成主消息处理循环 145
6.2.6 回顾一下WinMain() 145
6.3 用EditWndProc()处理消息 146
6.3.2 处理WM_DESTROY消息 147
6.3.3 处理WM_PAINT消息 147
6.3.1 使用Windows的DefWindowProc()函数 147
6.4 本章小结 148
第7章 生成菜单 149
7.1 给程序Editor加入下拉式菜单 149
7.1.1 生成菜单消息处理程序doCommand() 151
7.1.2 使用Windows的Mess-ageBox()函数 155
7.2 改变菜单项的外观 156
7.2.1 检查菜单项 158
7.2.2 使菜单项无效 158
7.2.3 加亮顶层下拉菜单 159
7.2.4 拷贝菜单标号 159
7.2.5 删除和增加下拉菜单项 160
7.2.6 获取下拉菜单的句柄 160
7.3 生成随机菜单 160
7.4 给菜单加上加速键 165
7.5 本章小结 166
第8章 生成对话框 168
8.1 模式对话框 168
8.2 非模式对话框 170
8.3 使用Dialog Editor(DLGEDIT.EXE) 171
8.4 分析模式对话框的源代码 172
8.4.1 修改C源文件增加模式对话框 175
8.4.2 建立对话框消息处理源文件DLGCMD.C 177
8.4.3 处理消息WM_INITDIALOG 180
8.4.4 处理消息WM_COMMAND 181
8.4.5 复习模式对话框 182
8.5 分析非模式对话框的源代码 182
8.5.1 修改C源文件增加非模式对话框 184
8.5.2 非模式对话框消息处理过程FindBox() 187
8.5.3 FindBox()中消息WM_INITDIALOG的处理 189
8.5.4 FindBox()中消息WM_COMMAND的处理 190
8.5.5 FindBox()中消息WM_SYSCOMMAND的处理 190
8.6 本章小结 191
第9章 Windows 3.1公共对话框:文件名选择 192
9.1 其它公共对话框 192
9.2 使用Filename公共对话框 193
9.3 建立文件打开对话框 193
9.4 驱动Filename对话框的C源代码 198
9.4.1 使用例程OpenBoxFN() 201
9.4.2 确认文件名 201
9.5 本章小结 202
9.4.3 测试字符合法性 202
第10章 Edit类窗口的使用 203
10.1 Edit类窗口的概念 203
10.2 用Edit类窗口作为子窗口 205
10.3 给程序Editor增加一个Edit类窗口 205
10.3.1 修改EDIT.C产生一个Edit类窗口 210
10.3.2 改变DOCMD.C使用Edit类窗口 212
10.4 本章小结 217
第11章 Windows下的文件功能 218
11.1 Windows文件功能的原则 218
11.2 文件操作的用户接口 219
11.3 修改程序Editor增加文件操作 222
11.3.1 处理消息MN_NEW 227
11.3.2 处理消息MN_OPEN 228
11.3.3 处理消息MNSAVE 229
11.3.4 处理消息MN_SAVEAS 230
11.3.5 SaveTheData()例程 231
11.3.6 ReadTheData()例程 232
11.4 本章小结 234
第12章 全局内存和剪贴板的使用 235
12.1 使用剪贴板和全局内存连接 235
12.2 增加全局内存操作和剪贴板功能 238
12.3 为全局内存和剪贴板功能修改DOCMD.C 241
12.3.1 处理消息MN_FILETOCLIP 247
12.3.2 ReadToClip()例程 248
12.3.3 处理消息MN_CLIPTOFILE 250
12.3.4 ClipToFile()例程 251
12.3.5 处理消息MN_WINTOCLIP 252
12.4 本章小结 254
第13章 Windows下的打印 255
13.1 打印背后的概念 255
13.2 修改程序Editor增加打印功能 257
13.3 编辑程序Editor中的打印处理 267
13.4 本章小结 270
第14章 多文本接口 271
14.1 MDI应用程序结构 271
14.2 MDI应用程序初始化 272
14.2.1 窗口类的注册 272
14.2.2 窗口创建 284
14.4 边框窗口函数 285
14.3 主消息环 285
14.5 子窗口函数 286
14.6 用子窗口协作数据 286
14.6.1 保存数据 287
14.6.2 使用属性 287
14.6.3 子窗口控制 287
14.6.4 创建子窗口 288
14.6.5 撤消子窗口 288
14.6.6 子窗口的激活 288
14.6.7 子窗口在屏幕上的位置 295
14.7 本章小结 295
第三部分 高级内容 296
第15章 用图形设备接口(GDI)显示正文 296
15.1 Font是什么? 296
15.2 第一次显示正文 297
15.3 列出Windows中的各种字体 302
15.3.1 修改EDIT.DEF和DOCMD.C 303
15.3.2 calcFont过程 305
15.3.3 列出字体部分小结 308
15.4 维护显示窗口 308
15.4.1 处理AW_PAINT消息 312
15.4.2 对过程displayFont的理解 314
15.4.3 有关重画的提示 314
15.5 本章小结 315
第16章 显示图形 316
16.1 逻辑与物理坐标 316
16.1.1 MM_TEXT映象模式的使用 316
16.1.2 使用MM_ISOTROPIC映象模式 318
16.1.3 使用MM_ANISO-TROPIC映象模式 320
16.1.4 坐标系统部分小结 321
16.2 创建GDITEST程序 322
16.2.1 GDITEST中使用的全局变量 333
16.2.2 处理Shapes菜单消息 333
16.2.3 响应消息WM_PAINT 335
16.2.4 处理Map Mode菜单消息 336
16.3 本章小结 338
第17章 滚动屏幕内容和控制鼠标事件 339
17.1 滚动的理论 339
17.2 为GDITEST增加滚动条 341
17.3 修改WinMain()函数增加滚动条处理功能 342
17.4 修改SetMap()移动逻辑坐标原点 342
17.4.1 修改程序doCommand()显示和取消滚动条 343
17.4.2 修改GdiWndProc()处理滚动条消息 346
17.5 鼠标移动的理论 349
17.6 在GDITEST应用程序中增加鼠标控制功能 351
17.6.1 修改GdiInit(),改变光标形状 352
17.6.2 修改GdiWndProc(),处理鼠标消息 352
17.6.3 处理WM_LBUTTON-DOWN消息 355
17.7 处理WM_MOUSEMOVE以及WM_LBUTTONUP消息 356
17.8 鼠标处理部分小结 356
17.9 增加打印功能 357
18.1 数据交换 361
18.1.1 利用剪贴板进行传输 361
第18章 动态数据交换(DDE) 361
17.10 本章小结 361
18.1.2 动态连接库 362
18.1.3 动态数据交换 362
18.1.4 DDE的用途 362
18.1.5 一个最终用户使用DDE 363
18.2 DDE的有关概念 363
18.2.1 客户和服务器对话 363
18.2.2 应用程序名称,课题名称以及项目名称 364
18.2.3 热的与温的数据链路 364
18.3 DDE消息 364
18.4 DDE的消息流 365
18.4.1 开始一个对话 365
18.4.2 单个项目的传输 367
18.4.3 建立一个永久性数据链路 370
18.4.4 远程应用程序命令 373
18.4.5 对话结束 376
18.4.6 动态数据交换小结 377
18.5 DDE管理库 377
18.5.1 DDEML概述 377
18.5.2 DDE管理库概念 378
18.5.3 串管理 379
18.5.4 服务器名称服务 379
18.5.5 对话管理 380
18.5.6 DDE、DDEML以及OLE 381
18.6 本章小结 382
第19章 对象链接与嵌入的用户接口指南 383
19.1 基本术语和概念 383
19.2 OLE的好处 384
19.3.1 插入嵌入对象 385
19.3 最终用户角度的OLE 385
19.3.2 察看对象 388
19.3.3 编辑对象 388
19.3.4 从非MDI服务器中更新对象 389
19.3.5 从MDI源中更新对象 389
19.3.6 包含未完成OLE对象的客户中的操作 390
19.3.7 访问对象动词:通过编辑激活 390
19.3.8 Links对话框 393
19.3.9 用于链更新的其它对话框 395
19.4 对象链接与嵌入的实现 396
19.4.1 OLE数据传输 396
19.4.2 OLE库的通信 396
19.4.3 剪贴板约定 397
19.4.4 使用包 398
19.4.5 使用服务器的用户接口 399
19.5 选择DDEML或OLE库指南 400
19.5.1 DDE、OLE消息协议以及库之间的比较 400
19.5.2 什么时候适于选择OLE库,而不是选择DDEML 400
19.5.3 什么时候选择DDEML,而不是OLE库 401
19.5.4 什么时候选择OLE和DDEML 402
19.5.5 多样化的OLE与DDEML版本 402
19.6 本章小结 402
第20章 动态链接库 403
20.1 什么是DLL 403
20.1.1 DLL和输入(Import)库 403
20.1.3 任务与DLL 404
20.1.2 应用程序和DLL模块 404
20.1.4 栈和DLL 405
20.1.5 Windows如何找到DLL 405
20.2 编写自己DLL的理由 406
20.2.1 应用程序中的代码和资源共享 406
20.2.2 不同的市场体制 407
20.2.3 定制控制 407
20.2.4 系统范围消息过滤 412
20.2.5 设备驱动程序 413
20.2.6 项目控制和开发 413
20.3 DLL的产生 414
20.3.1 源文件产生 414
20.3.2 建立.DEF或模块定义文件 417
20.3.3 建立NMake文件 418
20.4.1 建立库函数原型 420
20.4.2 输入库函数 420
20.4 应用程序访问DLL代码 420
20.5 Windows对象所属规定 422
20.6 本章小结 423
第21章 Windows应用程序调试 424
21.1 CodeView 424
21.1.1 CodeView设置 424
21.1.2 CodeView窗口 425
21.1.3 在CodeView中执行程序 425
21.1.4 断点 426
21.1.5 变量检查 427
21.3 Spy 428
21.2 Heap Walker 428
21.4 本章小结 429
第22章 TrueType字体和其它新特点 430
22.1 TrueType介绍 430
22.2 有关字体背景 430
22.2.1 字体到底是什么? 430
22.2.2 Windows字体 432
22.2.3 可移植性问题 434
22.2.4 TrueType的好处 435
22.3 轮廓字体实际如何工作 435
22.3.1 概述 435
22.3.2 字符间隔 435
22.4.2 量化:视觉和非线性 436
22.4.1 可读性与正确性 436
22.3.3 字体枚举 436
22.4 字体量化问题 436
22.4.3 ABC宽度必须正确使用 437
22.4.4 属性可影响字体高度 437
22.4.5 TrueType使用问题 437
22.5 移植层次 438
22.5.1 获得WYSIWYG 438
22.5.2 打印机可移植性 438
22.5.3 文本可移植性 438
22.5.4 字体可移植性 439
22.6 Windows 3.1中各种新特点 439
22.6.1 版本Stamping库 439
22.6.2 应用程序的重点测试 439
22.6.6 屏幕保护程序与Dr.Watson 440
22.6.7 Windows SDK一瞥 440
22.6.3 全局锁定(Locking) 440
22.6.5 Start-Up实用程序 440
22.6.4 改进的FileManager 440
22.6.8 用Escape打印 441
22.6.9 拖动与下拉 441
22.6.10 压缩实用程序 441
22.7 本章小结 442
第23章 Windows NT 443
23.1 Windows NT概述 443
23.1.1 设计目标 443
23.1.2 Windows 3.x API扩展 444
23.2 操作系统战略 444
23.2.2 基本原理 446
23.2.1 ACE建议(initiative) 446
23.2.3 系统组成 447
23.2.4 Executive特点 448
23.2.5 总结:兼容性 451
23.3 Win32概述 451
23.3.1 Windows结构 452
23.3.2 Windows WinAPI 452
23.3.3 基础操作系统核心 453
23.3.4 GDI新项:路径、转换和独立设备色彩 453
23.3.5 系统类与窗口系统 453
23.3.6 网络扩展 454
23.3.7 16位和32位API间的兼容性 454
23.3.8 总结:Win32 API未来 454
23.4.1 二进制兼容性 455
23.4 Win32的编程根据 455
23.4.2 32位Windows一瞥 457
23.4.3 在实模式中的指针处理 460
23.5 本章小结 476
第24章 其它工具和实用程序 478
24.1 工具分类 478
24.2 其它制造商介绍 479
附录A 资源文件语法的速查手册 491
A.1 术语定义 491
A.2 STRINGTABLE语句 491
A.3 ACCELERATOR语句 492
A.3.1 MENU语句 492
A.3.2 DIALOG语句 493
- 《近代旅游指南汇刊二编 16》王强主编 2017
- 《甘肃省档案馆指南》甘肃省档案馆编 2018
- 《近代旅游指南汇刊 31》王强主编 2014
- 《近代旅游指南汇刊二编 10》王强主编 2017
- 《手工咖啡 咖啡爱好者的完美冲煮指南》(美国)杰茜卡·伊斯托,安德烈亚斯·威尔霍夫 2019
- 《近代旅游指南汇刊 13》王强主编 2014
- 《近代旅游指南汇刊 28》王强主编 2014
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《近代旅游指南汇刊 23》王强主编 2014
- 《重庆市绿色建筑评价技术指南》重庆大学,重庆市建筑节能协会绿色建筑专业委员会主编 2018
- 《SQL与关系数据库理论》(美)戴特(C.J.Date) 2019
- 《魔法销售台词》(美)埃尔默·惠勒著 2019
- 《看漫画学钢琴 技巧 3》高宁译;(日)川崎美雪 2019
- 《优势谈判 15周年经典版》(美)罗杰·道森 2018
- 《社会学与人类生活 社会问题解析 第11版》(美)James M. Henslin(詹姆斯·M. 汉斯林) 2019
- 《海明威书信集:1917-1961 下》(美)海明威(Ernest Hemingway)著;潘小松译 2019
- 《迁徙 默温自选诗集 上》(美)W.S.默温著;伽禾译 2020
- 《上帝的孤独者 下 托马斯·沃尔夫短篇小说集》(美)托马斯·沃尔夫著;刘积源译 2017
- 《巴黎永远没个完》(美)海明威著 2017
- 《剑桥国际英语写作教程 段落写作》(美)吉尔·辛格尔顿(Jill Shingleton)编著 2019
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019