VISUAL C++MFC编程实例
本书通过85个实例全面讲述了应用MFC进行Visual C++编程的思想。每个实例均以编写一个应用程序要走的步骤编写。全书共分四部分进行介绍,第一部分是基础知识,第二部分讲述用户界面的实例,第三部分讲述MFC内部处理方面的实例,第四部分讲述打包实例。全书基本上面向实例进行阐述,讲解透彻、易于掌握。本书既可作为初学者和大专院校师生的自学参考书,也可作为计算机软件开发人员的技术参考书。目录译者序前言第一部分基础知识第1章窗口2 1.1窗口和API环境2 1.1.1三种类型窗口2 1.1.2客户区和非客户区3 1.2窗口和MFC环境4 1.3怎样应用MFC创建一个窗口5 1.4怎样使用MFC销毁一个窗口9 1.4.1捆绑到一个已有的窗口9 1.4.2窗口类10 1.4.3窗口进程10 1.5怎样使用MFC创建一个窗口类11 1.5.1使用AfxRegisterWndClass ()函数注册一个窗口类11 1.5.2使用AfxRegisterClass ()函数创建一个窗口类12 1.6怎样销毁一个MFC窗口类14 1.7厂商安装的窗口类14 1.8其他类型窗口15 1.9桌面窗口16 1.10小结16第2章类18 2.1基类18 2.1.1 CObject 18 2.1.2 CCmdTarget 19 2.1.3 CWnd 19 2.2应用程序、框架、文档和视图类19 2.2.1 CWinApp(O/C/W) 20 2.2.2 CView (O/C/W) 21 2.3其他用户界面类22 2.3.1通用控件类23 2.3.2菜单类23 2.3.3对话框类24 2.3.4控制条类24 2.3.5属性类25 2.4绘图类25 2.4.1设备环境类25 2.4.2图形对象类25 2.5文件类26 2.6数据库类26 2.6.1 ODBC类26 2.6.2 DAO类27 2.7数据集类27 2.8其他数据类27 2.9通信类28 2.10其他类29 2.11小结31第3章消息处理32 3.1发送或寄送一个消息32 3.1.1发送一个消息32 3.1.2寄送一个消息32 3.1.3发送一个消息与寄送一个消息的比较32 3.2怎样使用MFC发送一个消息33 3.3怎样用MFC寄送一个消息33 3.4三种类型的消息34 3.4.1窗口消息34 3.4.2命令消息34 3.4.3控件通知34 3.5 MFC怎样接收一个寄送的消息36 3.6 MFC怎样处理一个接收到的消息36 3.7处理用户界面的对象44 3.8创建自定义窗口消息45 3.8.1静态分配的窗口消息45 3.8.2动态分配的窗口消息46 3.9重定向消息47 3.9.1子分类和超分类47 3.9.2用MFC子分类窗口48 3.9.3重载OnCmdMsg ( ) 49 3.9.4使用SetWindowsHookEx ( ) 49 3.9.5使用SetCapture ( ) 49 3.9.6专有的消息泵50 3.10小结50第4章绘图51 4.1设备环境51 4.2在MFC环境中创建一个设备环境52 4.2.1屏幕52 4.2.2打印机53 4.2.3内存54 4.2.4信息54 4.3绘图例程55 4.3.1画点55 4.3.2画线55 4.3.3画形状55 4.3.4形状填充和翻转55 4.3.5滚动56 4.3.6绘制文本56 4.3.7绘制位图和图标56 4.4绘图属性56 4.4.1设备环境属性57 4.4.2画线属性58 4.4.3形状填充属性58 4.4.4文本绘制属性58 4.4.5映像模式59 4.4.6调色板属性62 4.4.7混合属性62 4.4.8剪裁属性63 4.4.9位图绘制属性64 4.5元文件和路径65 4.5.1元文件65 4.5.2路径66 4.6颜色和调色板66 4.6.1抖动色67 4.6.2未经抖动色67 4.6.3系统调色板67 4.6.4使用系统调色板68 4.6.5动画色71 4.7控制什么时候在哪里绘图71 4.7.1处理WM_PAINT 71 4.7.2只绘制被无效化的区域72 4.7.3处理WM_DRAWITEM 72 4.7.4在其他时间绘图73 4.8小结74第二部分用户界面实例第5章应用程序与环境76 5.1例1规划MFC应用程序76 5.2例2用AppWizard创建一个MFC应用程序79 5.3例3用ClassWizard创建一个类83 5.4例4初始化应用程序屏幕84 5.5例5保存应用程序屏幕86 5.6例6处理命令行选项88 5.7例7动态改变应用程序图标91 5.8例8提示用户优先选项93 5.9例9保存和恢复用户优先选项97 5.10例10终止应用程序100 5.11例11创建一个启动窗口101第6章菜单107 6.1例12使用菜单编辑器107 6.2例13添加一个菜单命令处理函数109 6.3例14根据当前可视文档动态改变菜单110 6.4例15启用和禁用菜单命令111 6.5例16复选标记菜单命令112 6.6例17单选标记菜单命令113 6.7例18动态修改菜单114 6.8例19动态修改系统菜单116 6.9例20触发一个菜单命令117 6.10例21创建弹出式菜单117第7章工具栏和状态栏120 7.1例22使用工具栏编辑器120 7.2例23启用和禁用工具栏按钮122 7.3例24为工具栏按钮添加字123 7.4例25非标准工具栏大小128 7.5例26保持工具栏按钮按下129 7.6例27保持工具栏按钮组中一个按钮按下130 7.7例28为工具栏添加非按钮控件131 7.8例29修改应用程序的状态栏136 7.9例30更新状态栏窗格138 7.10例31为状态栏添加其他控件139第8章视图145 8.1例32滚动视图145 8.2例33改变鼠标光标形状147 8.3例34沙漏光标148 8.4例35窗体视图149 8.5例36列表视图152 8.6例37动态分割一个视图163第9章对话框和对话条166 9.1例38使用对话框编辑器166 9.2例39创建一个对话框类168 9.3例40模式对话框170 9.4例41无模式对话框171 9.5例42在无模式对话框的控件间切换焦点172 9.6例43对话框中的动画173 9.7例44消息框174 9.8例45对话条176第10章控件窗口182 10.1例46在任意位置创建一个控件窗口182 10.2例47用子分类定制一个通用控件窗口183 10.3例48用超分类定制一个通用控件窗口188 10.4例49在按钮上放置位图190 10.5例50动态填充一个组合框192 10.6例51排序一个列表控件194 10.7例52分隔线控件196第11章绘图198 11.1例53绘制图形198 11.2例54绘制文本201 11.3例55从任意位置装入一个图标并绘制203 11.4例56从任意位置装入一个位图和绘制一个位图204 11.5例57从文件中创建一个位图206 11.6例58创建一个自绘位图211第三部分内部处理实例第12章消息215 12.1例59添加消息处理函数或重载MFC类216 12.2例60添加命令范围消息处理函数219 12.3例61重定向命令消息221 12.4例62创建自己的窗口消息222第13章文件、串行化和数据库225 13.1例63访问二进制文件225 13.2例64访问标准I/O文件227 13.3例65访问内存文件228 13.4例66在数据类中实现串行化229 13.5例67串行化SDI或MDI文档235 13.6例68按要求串行化240 13.7例69透明地更新串行化的文档242 13.8例70串行化多态类246 13.9例71串行化数据集248 13.10例72访问ODBC数据库252 13.11例73访问DAO数据库257第14章杂类263 14.1例74剪切、拷贝和粘贴文本数据263 14.2例75剪切、拷贝、粘贴多信息文本数据268 14.3例76剪切、拷贝和粘贴二进制数据273 14.4例77数组函数280 14.5例78列表函数281 14.6例79映像函数283 14.7例80系统键盘输入285 14.8例81时间288第四部分打包实例第15章库291 15.1例82静态链接C/C++库291 15.2例83动态链接C/C++库295 15.3例84动态链接MFC扩展类库300 15.4例85资源库303第五部分附录附录A控件窗口风格305附录B消息、控件通知和消息映像宏323附录C访问其他应用程序类328附录D开发中注意事项330附录E MFC快速参考指南339
12.96MB
文件大小:
评论区