| 作者 |
| 刘鎏等 |
| 丛书名 |
| 软件开发技术丛书 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9787111072423 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 本书是一本关于Windows 98编程的书籍,主要讲述了如何使用Visual C++ 6.0编写Windows 98应用程序。全书共分为三个部分:第一部分为“Windows 编程入门”,主要讲述了如何编写一些常见的用户界面元素——菜单、工具栏、状态栏、对话框。第二部分为“编程进阶”,主要讲述了切分窗口与多视图、文档与视图、内存管理、线程和DLL方面的知识。第三部分为“ActiveX”,主要针对当今比较热门的ActiveX技术,为读者了解这项技术并进一步提高打下基础。 |
| 目录 |
| 目 录 前言 第一部分 Windows编程入门 第1章 Windows 98与编程基础 1 1.1 Windows 98的新特性 1 1.2 Visual C++ 6.0简介… 1 1.3 Visual C++的系统工具 3 1.3.1 向导 3 1.3.2 资源编辑器 3 1.4 编写Hello World普通窗口程序 5 1.5 Hello World Win32控制台程序 12 1.6 Hello World Java应用程序 14 1.7 Hello World Visual Basic应用程序 21 1.8 本章小结 23 第2章 菜单 24 2.1 菜单资源与菜单资源编辑器 24 2.1.1 菜单资源 24 2.1.2 菜单资源编辑器 25 2.2 CMenu类 27 2.3 菜单消息响应 28 2.4 菜单的UI机制和CCmdUI类 30 2.4.1 菜单的UI机制 30 2.4.2 CCmdUI类 31 2.5 普通下拉菜单 32 2.6 动态地改变菜单 38 2.6.1 得到当前的CMenu对象 38 2.6.2 改变已存在的弹出式菜单 39 2.6.3 动态地改变菜单示例 42 2.7 上下文菜单 44 2.8 本章小结 53 第3章 图形设备接口 54 3.1 图形设备接口简介 54 3.2 设备环境 55 3.2.1 获取设备环境 55 3.2.2 释放设备环境 56 3.2.3 使用设备环境 56 3.3 基本图形的绘制 57 3.3.1 画点 58 3.3.2 画直线 58 3.3.3 画折线 58 3.3.4 画曲线 59 3.3.5 画封闭曲线 60 3.3.6 绘制基本图形示例程序 62 3.4 文本输出 64 3.4.1 显示文本 65 3.4.2 设置文本的前景颜色 65 3.4.3 设置文本的背景颜色 65 3.4.4 设置文本的背景模式 66 3.4.5 设置字符间距 66 3.4.6 设置文本对齐 66 3.4.7 得到文本度量 67 3.5 GDI对象 68 3.5.1 画笔——CPen类 68 3.5.2 画刷——CBrush类 73 3.5.3 字体——CFont类 78 3.6 本章小结 81 第4章 鼠标、键盘与计时器 82 4.1 鼠标 82 4.1.1 鼠标消息 82 4.1.2 鼠标消息处理 84 4.1.3 捕捉鼠标 85 4.1.4 更改鼠标的显示模式 86 4.1.5 鼠标程序示例 86 4.2 键盘 101 4.2.1 输入焦点 101 4.2.2 系统键与非系统键 101 4.2.3 虚拟键代码 102 4.2.4 键盘消息及其映射函数 103 4.2.5 字符消息及其映射函数 104 4.2.6 使用插字符 105 4.2.7 键盘输入示例程序 106 4.3 计时器 113 4.3.1 启动和关闭计时器 113 4.3.2 响应计时器消息 114 4.3.3 计时器程序示例 115 4.4 本章小结 124 第5章 工具栏与状态栏 125 5.1 工具栏 125 5.1.1 工具栏资源 125 5.1.2 工具栏按钮及其状态 127 5.1.3 工具栏与命令消息 127 5.1.4 CToolBar类 127 5.1.5 工具栏的创建和处理 129 5.1.6 工具栏的停靠和漂浮 130 5.1.7 工具提示 131 5.1.8 工具栏程序示例 132 5.2 状态栏 157 5.2.1 CStatusBar类 157 5.2.2 状态栏的创建 158 5.2.3 状态栏的提示信息与状态指示 159 5.2.4 状态栏程序示例 159 5.3 本章小结 170 第6章 MFC异常处理 171 6.1 Visual C++的异常处理机制 171 6.2 设置自己的terminate ()函数处理器 172 6.3 MFC中的异常类 173 6.3.1 CException 173 6.3.2 CMemoryException 173 6.3.3 CNotSupportedException 174 6.3.4 CFileException 174 6.3.5 CArchiveException 175 6.3.6 CResourceException 175 6.3.7 COleException 175 6.3.8 CUserException 176 6.3.9 CDBException 177 6.3.10 CDaoException 177 6.3.11 CInternetException 177 6.4 Win32系统级异常 177 6.5 本章小结 178 第7章 对话框和控件 179 7.1 对话框的种类 179 7.2 对话框资源 179 7.3 Windows标准控件 180 7.3.1 静态控件 181 7.3.2 编辑控件 181 7.3.3 按钮控件 181 7.3.4 列表框控件 182 7.4 对话框的创建和显示 183 7.5 CDialog对话框类 183 7.6 对话数据交换/对话数据验证 185 7.6.1 DDX机制 185 7.6.2 DDV机制 186 7.7 使用MFC的标准对话框 186 7.8 使用模式对话框 190 7.9 使用无模式对话框 202 7.10 本章小结 216 第8章 属性页和属性单 217 8.1 概述 217 8.1.1 创建属性页的模板资源 217 8.1.2 创建CPropertyPage派生类 218 8.1.3 创建并显示模式CPropertySheet 218 8.1.4 创建并显示非模式CPropertySheet 218 8.2 CPropertyPage与CPropertySheet 219 8.2.1 CPropertyPage 219 8.2.2 CPropertySheet 220 8.3 属性对话框示框 222 8.4 本章小结 232 第二部分 编程进阶 第9章 切分窗口与多视图 233 9.1 切分窗口 233 9.2 CSplitterWnd类 233 9.3 多视图选择 236 9.4 动态与静态切分窗口 236 9.5 滚动显示文本 237 9.6 单视图动态切分窗口 239 9.7 多视图静态切分窗口 246 9.8 本章小结 251 第10章 文档与视图 252 10.1 文档与CDocument类 252 10.2 视图与CView类 253 10.3 文档-视图之间的相互作用函数 253 10.3.1 CView类的GetDocument()函数 253 10.3.2 CDocument类的UpdateAllViews ()函数 254 10.3.3 CView类的OnUpdate()函数 254 10.3.4 CView的OnInitialUpdate()函数 255 10.4 最简单的文档/视图应用 256 10.5 格式视图与CFormView类 256 10.6 文档模板 257 10.6.1 文档模板的构成 257 10.6.2 文档模板的创建 258 10.7 MDI 258 10.8 文档与视图关系的程序示例 259 10.8.1 利用AppWizard生成带动态切分 窗口的MDI应用程序 259 10.8.2 生成带格式视图的MDI静态 切分窗口 261 10.9 本章小结 276 第11章 内存管理技术 277 11.1 内存管理的发展 277 11.2 简单内存分配 278 11.2.1 栈结构分配 278 11.2.2 堆分配 278 11.3 Windows中的内存分配函数 280 11.4 分配可移动内存和可放弃内存 281 11.5 虚拟内存 282 11.6 共享内存 283 11.7 本章小结 285 第12章 动态链接库 286 12.1 动态链接库的概念 286 12.1.1 动态链接和静态链接 286 12.1.2 创建动态链接库的原因 286 12.1.3 动态链接库基础 287 12.2 普通的DLL 288 12.2.1 理解普通DLL的本质 288 12.2.2 动态加载DLL 290 12.2.3 实现普通的DLL应用程序 290 12.3 扩展MFC DLL 295 12.3.1 初始化扩展DLL 295 12.3.2 动态加载扩展DLL 296 12.3.3 输出扩展型DLL 296 12.3.4 实现MFC扩展DLL 296 12.4 本章小结 303 第13章 多任务编程 304 13.1 进程、线程和优先级 304 13.2 工作线程和用户界面线程的创建 305 13.2.1 工作线程 305 13.2.2 使用工作线程 307 13.2.3 创建用户界面线程 310 13.3 线程的挂起及唤醒 312 13.4 使线程休眠 312 13.5 线程同步 312 13.5.1 使用事件对象 313 13.5.2 使用临界段 323 13.5.3 互斥量 326 13.5.4 使用信号量 329 13.6 线程的终止 332 13.7 如何编写基于进程的多任务操作 335 13.8 本章小结 338 第三部分 ActiveX 第14章 容器应用程序 339 14.1 实现容器应用程序的方法 339 14.2 创建框架容器应用程序 340 14.3 深入探析容器应用程序 342 14.3.1 COleDocument类 342 14.3.2 COleClientItem类 343 14.4 管理嵌入对象的大小和位置 345 14.5 使用鼠标选取项 348 14.6 删除嵌入的对象 353 14.7 本章小结 367 第15章 服务器应用程序 368 15.1 实现服务器应用程序的步骤 368 15.2 创建框架服务器应用程序 369 15.3 深入探析服务器应用程序 370 15.3.1 COleTemplateServer类 370 15.3.2 COleServerDoc类 371 15.3.3 COleServerItem类 372 15.4 定制应用程序的资源 373 15.5 完善视图类 377 15.6 完善应用程序的文档类 381 15.7 完善服务器项的类 386 15.8 运行服务器应用程序 396 15.9 本章小结 401 第16章 自动化 402 16.1 自动化概述 402 16.2 自动化服务器应用程序 403 16.3 创建自动化服务器应用程序 403 16.3.1 创建框架自动化服务器应用程序 403 16.3.2 定制应用程序的资源 404 16.3.3 完善视图类 406 16.3.4 完善应用程序的文档类 407 16.3.5 定义服务器的属性和方法 409 16.4 自动化客户应用程序 413 16.5 创建自动化客户应用程序 414 16.5.1 创建框架自动化客户应用程序 414 16.5.2 从类型库中创建类 415 16.5.3 编辑应用程序的资源 416 16.5.4 完善视图类 417 16.6 从客户程序控制服务器程序 424 16.7 本章小结 425 第17章 ActiveX控件 426 17.1 ActiveX/OLE控件 426 17.2 ActiveX控件的属性集 426 17.2.1 属性 426 17.2.2 事件 427 17.2.3 方法 428 17.3 创建框架ActiveX控件 428 17.4 完善应用程序的CEx17Ctrl类 431 17.5 增加库存事件和定制事件 433 17.5.1 增加库存事件 433 17.5.2 增加定制事件 435 17.6 增加属性 436 17.7 增加控件方法 438 17.8 本章小结 449 |