当前位置: 首页 > 图文教程 > 开发语言 > VC++ > CGfxOutBarCtrl之提升篇

VC++
几个数字信号处理算法程序
简易软盘镜像工具的实现及操作系统编写初步
教你使用正则表达式
C++ 扩展和嵌入 Python
拷贝构造和赋值操作符,C#和本机 C++ 代码的互用性
精通VC与Matlab联合编程(六)
精通VC与Matlab联合编程(五)
一个排序用的C++函数模板
浅析VC与MATLAB联合编程
C++编译器如何实现异常处理
文件重定义冲突的分析与解决
一步一步实现MFC扩展DLL中导出类和对话框
C宏:智者的利刃,愚者的恶梦!
引用的作用
《UTF-8与GB2312之间的互换》的改进
程序风格的要素-C++风格指南
VC+6.0实现文本串的自由拆分
怎样给串行化类分配版本号(可配置版本模式)
在常规的编程任务中使用新的 <tuple> 库
使用 typedef 抑制劣质代码

VC++ 中的 CGfxOutBarCtrl之提升篇


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-30   浏览: 48 ::
收藏到网摘: n/a

CGfxOutBarCtrl之提升篇
作者:李晓飞

下载本文示例代码


本文代码运行效果图


今天难得有空停下手中的活来收一下信箱的MAIL,很高兴能收到大家的来信,其中大多都是针对上期中的一篇文章:《CGfxOutBarCtrl之BUG篇》。看到大家热情洋溢的言语我想再次感谢VC知识库的朋友们!其中有几位朋友在来信中提到:如何在多文档程序中实现类似OutLook的菜单界面呢?我觉得这个问题问的很好,因为现在大多数的界面库(BCG/CJLibrary)演示程序都是建立Dialog/SDI基础上的,所以大家按照常规做法很容易“克隆”,那么在多文档的情况我们是不是更应该来考虑一下如何来实现呢?那么现在就让我们来实现多文档下的OutLook菜单界面。

1. 建立工程:新建一个多文档类型的工程,工程名为:MultiOutLook。

2. 准备资源:为了利用原始工程中的[位图/图标/光标]等资源,建议在动手改造之前,先把原来单文档工程下的RES目录拷贝过来,然后覆盖多文档目录下的RES目录。不然动拼西凑地找资源太麻烦,哈哈。

3. 修改资源头文件(resource.h):资源虽然已经具备,可是我们还没有把它加入到工程的资源树中去,做法还是原版不动的“拿来主义”。名字可不要敲错哦。然后要注意修改resource.h文件中的符号定义(#define)。

4. 实现代码:要实现多文档下的OutLook菜单界面,你只要改变“子框架“(CChildFrame)的结构就可以。其实说白了就是把单文档时的主框架结构拉到现在多文档的子框架结构中来即可。具体做法是:把以前单文档时的CMainFrame的OnCreateClient中代码拉到现在的CChildFrame的OnCreateClient事件中来。
再者CChildFrame的成员变量:wndSplitter/wndBar/imaLarge/imaSmall/wndTree也和以前单文档时的CMainFrame中的成员变量保持一致。同样也不要忘记在CChildFrame的头文件中把用到的头文件也包含进来哦。

5. 编译运行,一切OK!

至于效率和实用你就慢慢雕刻吧!如果有什么不妥之处,也不要忘记来信告诉俺哦。
Mail:[email protected]