《Windows 95 编程指南》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:(美)Stephen R.Davis著;王耕武等译
  • 出 版 社:北京:电子工业出版社
  • 出版年份:1996
  • ISBN:7505331426
  • 页数:420 页
图书介绍:

中译本序 1

绪论 1

你是谁呢? 1

前言页 1

关于本书 2

Windows 95和Visual C++ 2

本书是如何组织的 3

第一部分 入门 3

第五部分 应用例子之三:文本编辑器 4

附录 Visually Bacsic C 4

第六部分 十准则集粹 4

第四部分 应用例子之二:个人备忘录 4

第三部分 应用例子之一:绘图程序 4

第二部分 AppWizard程序设计 4

本书所用的图标 5

第一部分 入门 7

第一章 Windows 9

简短的历史课 9

史前Windows 9

Windows 10

Windows 95 11

用户的Windows 12

多任务,可以进行切换 13

一致的用户界面 13

安装比例字体 14

最后——其他需要改进的地方 14

程序员的Windows 14

DIG设备独立图形 14

增强的内存管理——如果我没记错的话 15

结束语 16

第二章 你的第一个Windows程序 17

对“Hello,world”程序说你好 17

编译并运行该程序 20

与该程序的低劣的孪生兄弟比较 21

好吧,那么什么是原型呢? 22

包含include文件 22

到底什么是API? 22

局部原型 24

匈牙利表示法 24

那么,什么是句柄呢? 25

WinMain():第一个动作 26

WinMain()的参数 26

登记窗口类 27

创建一个窗口 30

显示窗口 31

显示出那条讨厌的消息 32

在消息循环中兜圈子 33

第三章 消息循环:最终显示出“Hello,world” 33

以事件为基础的程序设计中的基础事件 34

被“Hello,world”的消息循环弄得神经错乱 36

乐于对事件做出响应:WindowProc() 37

响应不同的消息 38

用WM_PAINT消息跟踪你的屏幕 38

有关桌面与白板 39

回到WM_PAINT消息 40

什么时候必须重画? 41

WM_DESTROY消息 42

与图形设备界面进行交互 43

到现在你还跟得上吗? 43

更有意思的字母:HDC 44

使非法矩形合法化 46

对剪裁区进行剪裁 47

我能看到这个非法项起作用吗? 47

其他可返回设备上下文的函数 50

结束语 50

第四章 绘制和书写 53

测量可变尺寸字体 53

显示变宽字体 53

接着来,试一下 55

Prog1_2:源代码 55

执行程序——出现了一个可怕的问题 61

调整你的程序 63

使用显示单位会更方便 65

下一步怎么办? 69

20分钟问答 71

第二部分 AppWizard程序设计 73

第五章 建立你的第一个AppWizard程序 75

“Hello,world” AppWizard风格 75

“Hello,world”在哪儿? 76

结束语 78

C++就是C加、加、加 79

第六章 C++的应急课程 79

非面向对象编程的特性 80

以一种新的注释风格进行注释 80

随意地,声明! 80

引用引用变量 80

函数重载 82

缺省默认参数 84

使某些函数内联 84

使你适应面向对象的编程 85

消耗面向对象的nachos 85

封装 85

函数式程序设计微波炉 86

分类 86

OOP思维方式 87

用类编程 88

卡片装载的成员函数 89

锁上门,并把数据藏起来! 90

我如何得到有用的材料? 91

隐藏数据不浪费吗? 92

我不会把一个好东西弄糟吗? 92

良好的开端:构造函数 92

何时创建和破坏对象? 94

介绍一个新的关键字 94

处理你的断承 95

虚拟成员函数:它们是真实的吗? 96

这里没有第二类公民 97

嘿! I/O不过是流入流出 98

结束语 99

第七章 牢固的基础:MFC 101

被解释的MFC 101

理解MFC界面 102

MFC还能做些什么 103

MFC如何工作? 103

登记窗口类 104

从MFC到达程序并返回 107

创建窗口 107

CProg2_1::InitInstance()的作用 108

发送消息 109

发现消息的流向 110

用户类 110

检验视图 110

有关其他应用程序框架类的讨论 112

MFD(Microsoft Foundation Details,Microsoft基础细节) 112

获得你的对象的句柄 112

寻找 113

学习stdafx.cpp 114

引入Prog2_1.rc文件 114

结束语 115

第八章 在类中传送消息:Class Wizard 117

做得好看一些 117

开始仪式:俱乐部里又来了新成员 119

CPoint是什么?CCircle呢?还有CArgument? 121

哪一个操作是为CPoint以及其他的类定义的? 122

增加一个消息处理器:更多的Wizardry 122

争夺WM_CREATE 123

没有映射表你不能为你的消息规定路线 124

消息映射表如何工作? 125

为什么使用一种不同的机制 126

在实际运行中观察这一过程 126

收尾工作 127

结束语 128

第九章 资源管理 129

介绍曾经很有帮助的资源文件 129

为什么要考虑一个资源文件? 129

真的,什么是资源文件? 130

那么,给我看看 131

结束语 131

20分钟问答 133

第三部分 应用例子之一:绘图程序 137

重大的事件:鼠标的移动 139

第十章 基本的鼠标陷阱 139

用鼠标绘图(其他的动物可不行) 144

用鼠标绘图:再次尝试 149

结束语 153

第十一章 保存鼠标绘图的信息 155

保存屏幕:Prog3_2 155

保存鼠标输入信息 156

查看View类的include文件 157

C...arrays;C...arrays run;run,arrays,run! 158

找到源代码的根源 159

记录鼠标事件 162

其他 163

重画 163

清屏幕 163

好啦! 164

修改绘图程序:Prog3_ld 164

测试和评价 168

临近尾声 168

结束语 173

第十二章 视图与文档 175

Document-View模式 175

Document-View模式的MFC版本 176

从视图中分离出文档 176

为何要分成两类? 176

文档 177

视图 181

运行程序 185

保存文档! 185

将Serialize()补充完整 186

检验结果 189

注册一个文件类型 189

关于“no update” 190

再访Prog3_3b.cpp 191

什么是.INI文件 193

下一步怎么办? 194

结束语 195

第十三章 滚动窗口 197

滚屏 197

我们干吧! 197

破晓时分(最后的运行) 202

结束语 202

第十四章 代码调试 203

TRACE 204

几种模式 204

使用TRACE 204

调试框架 205

Assert Valid() 207

关于Dump() 208

自我诊断 208

调试代码的作用 213

用Dump()显示对象的信息 214

检查内存 216

结束语 218

20分钟问答 219

第四部分 应用例子之二:个人备忘录 223

第十五章 打开对话框 225

备忘录应用程序 226

建立Prog4 226

About对话框 227

编辑About对话框 229

建立一个新的对话框 230

建立一个对话框类 232

显示和读取对话框 235

多文档界面 237

结束语 237

第十六章 与对话框对话 239

数据传送 239

初始化对话框 240

以当前日期和时间为初始值 241

滚动条控制 244

组合列表框和选择按钮 244

Scroll Bar Value()函数 249

设置滚动条的范围 249

OnHScroll()函数 250

指定域的类型(DDX/DDV) 250

结束语 252

第十七章 用菜单控制应用程序 253

菜单编辑 253

添加菜单项 253

菜单控制项 255

菜单消息 256

允许和禁止菜单项:UI_CMD Msg 258

在工具条上添加控制 259

结束语 260

第十八章 调度个人文档视图 261

调度项目:CEntry类 261

将项目存入文档 264

添加和删除项目 271

GetFirst()/GetNext()项的定位 271

贯穿高纤维序列 272

创建一个新的项:只说“ID_Edit_Add” 272

修改一个表项 272

观察该文档 274

实现修改和删除功能 280

多重视图 280

结束语 281

第十九章 罢免出版社:打印备忘录项目 283

打印你的列表:初次尝试 283

打印过程 283

多页输出 285

它是否起作用? 290

不知道打印的页数又如何呢? 290

建立一种漂亮的字体 291

试试它! 292

外出之前别忘了穿戴鞋帽 296

结束语 304

第二十章 完成个人备忘录应用程序 305

进行调度 305

使用定时器 305

设置一个定时器 305

定时器的局限性 306

其他有关时间的细节 307

处理一个timer消息 308

到类的前面去 310

代循环(Idle Loop) 311

使用你的空闲时间 312

结束语 314

比较空闲处理和定时器处理 314

20分钟问答 317

第五部分 应用例子之三:文本编辑器 319

第二十一章 处理键盘 321

键盘消息 321

键的抬起和放下 322

你处于什么状态?(内布拉斯加州?) 323

ASCII和WM_CHAR消息 324

让我们看看按键消息的作用 325

结束语 329

建立框架 331

建立文档类 331

第二十二章 基本编辑器 331

读写文本文件 338

增加View 340

结束语 343

第二十三章 改善视图 345

插入记号 345

增长和削弱插入记号 346

迁移插入记号 347

横向定位插入记号:错误方法 347

用鼠标定位插入记号 348

横向定位插入记号:正确方法 348

极小化重画 349

文本编辑器:续集 350

最小的更新 356

插入记号的功能 357

结束语 357

第二十四章 自己添加卷滚 359

增加屏幕卷滚性能 359

拖动卷滚条 360

证明最小的函数 369

多视图 370

处理方向键 370

结束语 372

20分钟问答 373

第六部分 十准则集粹 377

第二十五章 十个重要的C++编程错误 379

忘记初始化指针 379

忘记释放堆内存 380

返回对局部内存的引用 381

使运算符混乱 382

0的四种面孔 382

声明的混乱处 383

计算顺序混乱 384

从构造函数内调用虚拟成员函数 385

说明虚拟成员函数 385

指针对准 386

第二十六章 十个重要的编译器设定 389

Project Settings | Microsoft Foundation Classes 389

Project Settings | C/C++ | Code Generation | Processor 390

Project Settings | C/C++ | Code Generation | Calling Convention 390

Project Settings | C/C++ | C++ Language | Enable Exception Handling 390

Project Settings | Link | Customize | Link Incrementally 391

Project Settings | Browse | Generate Browse Info File Only on Demand 391

Tools | Customize | Toolbars 391

在线帮助 393

书籍 393

第二十七章 十个重要的获得帮助的地方 393

杂志 394

在线论坛 394

Internet网络上的USENET消息组 395

Microsoft的在线服务 395

最近的计算机迷 395

计算机俱乐部 396

电话帮助 396

神的介入 396

附录 Visually Basic C 397

BASIC历史 397

编译的和解释性的语言 398

一些BASIC比较 398

Minimal和do-it-all 399

简洁和繁锁语言 399

进入C 399

注释句 400

对象 400

你有一些对象要说明吗? 401

范围规则 402

C中数组的定义 403

用户定义类型 403

String em up 404

运算符 405

丢失类型 405

赋值运算符 407

在转换运算符方面的可用来说明的转换事实 407

增加算术运算符 408

比较运算符 408

逻辑运算符合乎逻辑吗? 408

对位选择逐位运算符 410

理解多变的移位运算符 410

驯服别扭的三元式(ternary) 410

程序流程控制 410

为了Pete的爱 412

Switch对我来说更加清晰易懂 413

函数 414

使用C函数 415

典型的标准类型说明语句 416

几个C指针 416

指针算法 418

指针防御 419

编程提示 419

原型语句 420

按程序包编程 420

采用标准格式 420

KISS(Keep it simple,stupid)使程序保持简单、苯拙 420

结束语 420