书籍详情

MFC经典问答

MFC经典问答

作者:(美)Eugene Kain 著;健莲科技 译

出版社:中国电力出版社

出版时间:2001-07-01

ISBN:9787508306063

定价:¥59.00

购买这本书可以去
内容简介
  本书提供随时可以使用的技术来解答MFC开发人员在现实中遇到的最普遍的问题。本书独特的结构设计使您能够迅速地查找到答案并且把相关的解决方案结合到程序中。本书的FAQ采用一种理想的格式,这样开发人员能够迅速找到需要紧急解决的问题的答案。同时,您会发现许多技术可以帮助您更好地理解MFC应用程序的内部工作,并提高MFC编程技巧。尤其特殊的是,解释(Explanation)和附加注释(AdditionalComment)部分通常都深入到MFC源代码或者没有归档的函数内部,从而解释所讨论的技术如何工作、它们与MFC的默认行为有何不同以及是如何与其默认行为结合起来的。
作者简介
暂缺《MFC经典问答》作者简介
目录
第0章  术语和内容  
第1节  本书中使用的术语  
第2节  本书中实例代码中的约定说明  
第1章  文档/视图结构的背景   
FAQ  1.1  什么是文档/视图结构?
FAQ  1.2  使用文档/视图结构的好处是什么?
FAQ  1.3  文档/视图结构的组件有哪些?它们彼此间如何联系?
FAQ  1.4  文档的作用是什么?
FAQ  1.5  视图的作用是什么?
FAQ  1.6  视图框架窗口的作用是什么?
FAQ  1.7  文档模板的作用是什么?
FAQ  1.8  文档模板资源ID的作用是什么?
FAQ  1.9  如何创建文档/视图结构的组件对象
FAQ  1.10  MFC如何发送命令消息?
FAQ  1.11  MFC如何执行标准的菜单命令? 
第2章  文档和文档模板 
第1节  管理文档模板 
FAQ  2.1  在应用程序中如何创建并引用多文档模板
FAQ  2. 2  当用户每次创建一个新文档时,如何管理多文档模板而不用弹出对话框
FAQ  2. 3  如何创建具有一个新的文档模板资源ID的资源
FAQ  2.4  当打开一个文档时,MFC如何选择所使用的文档模板对象?
FAQ  2.5  如何把多个文档扩展名与同一个文档或视图类关联?
第2节  管理文档  
FAQ  2.6  如何防止一个MDI应用程序在启动时打开一个新(空)文档?
FAQ  2.7  如何编写程序来创建一个新(空)文档?
FAQ  2.8  如何编程来打开一个存在的文档文件?
FAQ  2.9  如何使应用程序保存上一次的活动文档,并自动地再次打开它?
FAQ  2.10  如何使文档自动地保存而不用提示用户?
FAQ  2.11  如何实现“Save all doucuments”菜单命令,该命令在保存每个修改过的文档时不用               提示用户?
FAQ  2.12  如何编程来关闭一个文档?
FAQ  2.13  如何实现“Close all documents”菜单命令?
第3节  管理当前文档列表(MRU,Recent Files List)  
FAQ  2.14  如何定制在“File”菜单内显示的当前文档数?
FAQ  2.15  如何编程在Recent Files表中增加一个特殊的字符串?
FAQ  2.16  如何截取用户选择的Recent Files项?
FAQ  2.17  如何使应用程序自动地打开在Recent File表顶部列出的文档?
第4节  其他条目  
FAQ  2.18  如何得到指向当前活动文档的指针?
FAQ  2.19  如何遍历当前打开的所有文档列表?
FAQ  2.30  为什么我的应用程序没有在Windows Explorer注册它的文档文件,如何改正这一情况?
第3章  视图和框架窗口 
第1节  综合主题  
FAQ   3.1  如何在我的应用程序中增加一个新类型的视图或框架窗口?
FAQ   3.2  如何选择是在视图类还是在视图的框架窗口类内实现某种特殊行为呢?
第2节  打开和关闭视图以及框架窗口  
FAQ   3.3  如何编程打开一个基于特殊文档模板的视图?
FAQ   3.4  如何在每次创建新文档时打开两个(或多个)特定视图?
FAQ   3.5  如何编程来关闭一个视图?
FAQ   3.6  如何编程来关闭一个打开文档的所有视图?
FAQ   3.7  如何防止用户关闭一个视图?
第3节  管理位置和大小  
FAQ   3.8  如何编程来改变视图的大小和位置?
FAQ   3.9  如何设置一个视图的初始位置和大小?
FAQ   3.10  如何使主应用程序窗口居中?
FAQ   3.11  如何使视图居中?
FAQ   3.12  如何使框架窗口的大小不可改变?
FAQ   3.13  如何限制视图的最大或最小尺寸?
FAQ   3.14  如何限制视图的重新定位?
FAQ   3.15  如何使视图初始显示的规模为最小或最大?
FAQ   3.16  如何使应用程序以最大化或者最小化状态启动?
FAQ   3.17  如何使主应用程序窗口总是位于其他窗口的上面?
FAQ   3.18  如何使某个视图总位于其他视图的上面?
FAQ   3.19  如何实现一个像Visual C++和Word那样的全屏视图模式?
第4节  管理标题、图标、光标和背景  
FAQ   3.20  如何定制视图的标题?
FAQ   3.21  如何在视图的标题中显示一个“修改过”的指示符,与某个“修改过的”文档关联?
FAQ   3.22  在应用程序中如何修改与各个类型的窗口相关联的图标?
FAQ   3.23  如何动态地改变主应用程序窗口的图标?
FAQ   3.24  如何动态地改变某个视图的光标?
FAQ   3.25  如何在某个漫长的操作中显示一个沙漏光标?
FAQ   3.26  如何改变一个视图的背景颜色?
FAQ   3.27  如何在主应用程序窗口的背景上画图?
第5节  程序清单视图  
FAQ   3.28  如何使我的程序清单视图与其他的视图同步?
FAQ   3.29  如何使一个程序清单视图初始显示时的尺寸恰好为所关联的对话资源的大小?
FAQ   3.30  如何在程序清单视图内使UPDATE_COMMAND_UI机制?
FAQ   3.31  如何改变程序清单视图的背景颜色?
FAQ   3.32  如何在程序清单视图的控件上增加工具提示(ToolTip)?
第6节  分割窗口  
FAQ   3.33  如何编写一个具有水平和垂直静态分割器面板(三线分割)的窗口?
FAQ   3.34  如何锁定一个分割器(Splitter)窗口,从而使用户不能移动分割线?
FAQ   3.35  如何编程改变某个分割器窗口内面板的大小?
FAQ   3.36  如何向用户可见地显示包括活动视图的分割器面板?
第7节  切换视图  
FAQ   3.37  如何动态地切换在MDI子窗口或者在SDI主应用程序窗口显示的视图?
FAQ   3.38  如何动态地切换在分割器窗口内显示的视图?
第8节  其他条目  
FAQ   3.39  如何得到活动视图的指针?
FAQ   3.40  如何得到活动框架窗口的指针?
FAQ   3.41  如何遍历与某个文档关联的所有视图程序清单?
第4章   对话框 
第1节  综合主题  
FAQ  4.1  如何设置一个对话框的起始位置?
FAQ  4.3  对话框如何访问活动文档(或视图)对象?
FAQ  4.4  如何控制对话框的背景颜色?
FAQ  4.5  如何给一个对话框加入预览区域(在对话框内绘制)?
FAQ  4.6  如何为对话框增加一个图标?
FAQ  4.7  如何实现一个展开的对话框?
FAQ  4.8  如何为对话框增加一个工具栏?
第2节  处理对话框内的控件  
FAQ  4.9  当显示一个对话框时,如何选择最初拥有焦点的控件
FAQ  4.10  如何在对话框中定制确认规则?
FAQ  4.11  如何改变对话框内的控件的字体和颜色?
FAQ  4.12  如何在对话框中使用UPDATE_COMMAND_UI机制?
FAQ  4.13  如何为对话框里的空间增加工具提示支持? 
第5章  属性单 
第1节  综合主题  
FAQ  5.1  如何建立和使用一个属性单?
FAQ  5.2  如何处理属性单的apply按钮?
FAQ  5.3  如何通过编程改变属性单内的活动页?
FAQ  5.4  如何定制标准的属性单按钮?
FAQ  5.5  如何控制属性单窗口的尺寸?
第2节  管理标签(Tab)  
FAQ  5.6  是选择标签的层叠行方式还是选择标签的带有滚动条单一行的方式?
FAQ  5.7  如何改变属性单的标签的标题?
FAQ  5.8  如何为属性页的标签(tab)加入图标?
第3节  嵌入属性单  
FAQ  5.9  如何在对话框里嵌入属性单?
FAQ  5.10  如何在表单视图里嵌入属性单?
FAQ  5.11  如何在分割器窗口里嵌入属性单?
FAQ  5.12  如何在小框架窗口里嵌入属性单? 
第6章  工具栏和状态栏 
第1节  工具栏  
FAQ  6.1  如何在主框架窗口或视图的框架窗口加入一个或多个工具栏?
FAQ  6.2  用于控制工具栏位置、方位以及一般行为的各种操作是什么?
FAQ  6.3  如何通过编程实现将一个工具栏紧随另一个工具栏停靠?
FAQ  6.4  如何为工具栏添加一个组合框?
FAQ  6.5  如何为工具栏按钮添加文本标签?
FAQ  6.6  如何实现用户使用菜单选择所有的工具栏?
FAQ  6.7  如何通过选择右击停靠区而显示的弹出式菜单,允许用户选择所要的工具栏?
FAQ  6.8  如何动态地在不同的工具栏之间切换?
第2节  状态栏  
FAQ  6.9  如何为视图的框架窗口添加一个定制的状态栏?
FAQ  6.10  如何更新状态栏格的文本?
FAQ  6.11  如何定制属性条的字体?
FAQ  6.12  如何在状态栏内绘画
FAQ  6.13  如何在显示菜单提示时最大化消息格?
FAQ  6.14  如何在状态栏内显示一个进度指示器?
第3节  常见控制栏问题  
FAQ  6.15  如何编程显示或隐藏控制栏?
FAQ  6.16  如何设置浮动控制栏的标题?
FAQ  6.17  如何保存和恢复控制栏的位置和状态?
FAQ  6.18  如何创建自定义控制栏? 
第7章  菜单 
FAQ  7.1  如何用一个单一函数处理几个不同的菜单命令?
FAQ  7.2  如何实现一个右键弹出式菜单(上下文菜单)?
FAQ  7.3  如何在当用户在一个工具栏上点击一个按钮时显示一个弹出式菜单?
FAQ  7.4  如何当用户在一个对话框中击鼠标右键时显示一个弹出式菜单?
FAQ  7.5  如何实现一个属主绘式菜单?

第8章  打印和打印预览 
FAQ  8.1  MFC的打印体系结构是什么?
FAQ  8.2  如何在MFC应用程序中实现打印和打印预览?
FAQ  8.3  如何打印页数事先未知的文档(动态分页)?
FAQ  8.4  如何像Microsoft Word那样预测分页符?
FAQ  8.5  如何编程动态实现打印方向(横排或竖排)的改变?
FAQ  8.6  如何不向用户显示标准的打印对话框而直接打印?
FAQ  8.7  如何自定义标准的打印对话框并获取用户选项?
FAQ  8.8  如何自定义“打印…”对话框?
FAQ  8.9  如何停止或中断打印作业?
FAQ  8.10  如何为单色打印机实现灰度打印预览?
FAQ  8.11  如何在代码中区分画图、打印预览和实际打印?
附录A 公用函数和类 
附录B 参考文献和其他资源 
  
  
  
  
  
 
猜您喜欢

读书导航