《WINDOWS 3.1程序开发指南》求取 ⇩

第一章 分析一个窗口1

1.1 注册一个窗口类1

1.2 其它的类型1

1.2.1 系统全局类1

1.2.2 应用程序全局类2

1.2.3 应用程序局部类2

1.2.4 同名的窗口类2

1.3 窗口类的各部分3

1.4 Windows如何存储窗口类4

1.5 创建和删除窗口事例7

1.6 窗口风格8

1.6.1 Windows如何存储窗口事例10

1.7 窗口特性13

1.8 窗口消息15

1.8.1 消息的种类15

1.8.2 类定义的整型数消息15

1.8.3 系统全局字符串消息16

1.9 暗中观察窗口17

1.9.1 Voyeur的初始化18

1.9.2 初始化Statisties对话框19

1.9.3 Peering into Window21

1.9.4 更新对话框23

1.9.5 冻结对话框信息24

1.9.6 绘制窗口边框25

1.9.7 设置类和窗口信息26

1.9.8 填充风格列表框27

第二章 子类化和超类化窗口47

2.1 怎样进行窗口子类化47

2.2 窗口子类化要求的限制条件50

2.3 程序管理器还原程序51

2.3.1 PM Restore怎样运行51

2.3.2 WinMain函数52

2.3.3 改变程序管理器的菜单54

2.4 过程事例55

2.4.2 PMSubClass函数和消息的捕获58

2.4.1 回到原来的话题58

2.4.3 AnyAppsRunning函数61

2.4.4 运行PM Restore61

2.5 怎样进行窗口超类化68

2.6 一个窗口超类化的例子73

2.7 窗口超类化程序包:SUPERCLS.C73

2.8 应用程序:NOALPHA.C76

2.8.1 初始化应用程序76

2.8.2 超类窗口过程77

2.8.3 对话框函数78

第三章 对话框技术93

3.1 SetWindowPos对话框94

3.2 Options对话框97

3.2.1 设计对话框97

3.2.2 对话框函数99

3.2.3 ShowArea函数100

3.3 非模式对话框102

3.3.1 使用非模式对话框103

3.3.2 非模式对话框怎样工作105

3.4 动态对话框106

3.4.1 建立对话框样板111

3.5 管理对话框样板内存块114

3.6 模式选择对话框114

3.6.1 解法1:模式对话框中的非模式对话框116

3.6.2 解法2:使用SetParent函数116

3.6.3 最终解法:强行方法119

第四章 设计自定义子控制165

4.1 设计自定义子控制的规则166

4.2 实现Meter控制169

4.2.1 设计Meter控制的程序员界面169

4.2.2 实现Meter控制代码170

4.2.3 子控制的一些特殊消息172

4.2.4 绘制Meter控制174

4.3 简化的旋转按钮(spin button)182

4.3.1 设计旋转按钮程序员界面182

4.3.2 实现旋转按钮源代码184

4.3.3 绘制Spin Button控制184

4.3.4 使用旋转按钮修改一个值186

4.3.5 滚动旋转按钮188

4.4 自定义子控制与Microsoft的对话框编辑器结合196

4.4.1 准备对话框编辑器196

4.4.2 在自定义控制中添加对话框编辑器支持函数198

4.4.3 ClassInfo函数199

4.4.4 ClassStyle和ClassDlgFn函数201

4.4.5 ClassFlags函数207

4.5 在应用程序中使用自定义控制221

5.1 Windows怎样管理打印机229

第五章 设置打印机229

5.1.1 打印机设备驱动程序234

5.1.2 DEVMODE结构和打印机环境237

5.1.3 打印机环境241

5.1.4 ExtDevice Mode函数242

5.1.5 向打印机输出245

5.1.6 获得打印机专有信息246

5.1.7 打印机驱动程序的演变247

5.2 打印和打印设置公用对话框248

5.3 打印机设置实例应用程序253

第六章 任务和队列263

6.1 任务及其句柄263

6.1.1 前景267

6.2 应用程序队列267

6.3 系统和应用程序队列270

第七章 钩279

7.1 钩的基本知识280

7.2.1 WH_CALLWNDPROC和WH_GETMESSAGE钩285

7.2 从链中删除一个过滤函数285

7.2.2 WH_KEYBOARD钩286

7.2.3 WH_MOUSE钩287

7.2.4 WH_HARDWARE钩288

7.2.5 WH_SYSMSGFILTER和WH_MSGFILTER钩289

7.2.6 WH_JOVRNALRECORD和WH_JOVRNALPLAYBACK钩292

7.2.7 WH_SHELL钩296

7.2.8 WH_CBT钩297

7.2.9 WH_DEBUG钩300

7.3 屏幕刷新实用例程301

7.4 Echo应用程序(一个宏记录程序)316

7.4.1 记录和重演事件316

7.4.2 请求帮助318

第八章 MDI应用程序技术335

8.1 MDI应用程序基础335

8.2 MDI实用应用程序341

8.3 关闭MDI子窗口342

8.4 吞噬鼠标消息345

8.5 状态条348

8.6 菜单选项帮助351

8.7 自定义平铺361

8.8 实现一个带状条(Ribbon)366

8.9 关闭MDI应用程序370

第九章 实现拖放423

9.1 成为一个拖放文件客户(Dropfile Client)426

9.2 怎样工作427

9.3 Burnlt429

9.4 成为一个拖放文件服务器(Dropfile Server)435

9.5 拖放文件服务器实例440

9.6 拖放的其它用法450

9.7 下一步做些什么451

第十章 安装商用应用程序453

10.1 设计设置程序453

10.2 Microsoft的设置程序支持454

10.3 版本控制458

10.4 将版本控制和还原结合起来468

10.5 对设置程序特别要注意的几点474

10.6 Setup应用程序477

10.6.1 SETUP.INF文件478

10.7 与程序管理进行动态数据交换489

10.7.1 向程序管理器发送命令492

10.7.2 终止DDE会话494

附录A 确定应用程序所需的堆栈尺寸543

附录B 访问类和窗口额外字节546

附录C BUILTINS.JMR文件549

1994《WINDOWS 3.1程序开发指南》由于是年代较久的资料都绝版了,几乎不可能购买到实物。如果大家为了学习确实需要,可向博主求助其电子版PDF文件(由(美)JEFFREY M.RICHTER著;席永斌译 1994 北京:电子工业出版社 出版的版本) 。对合法合规的求助,我会当即受理并将下载地址发送给你。