【VC++开源代码栏目提醒】:网学会员VC++开源代码为您提供VC6功能增强插件TabBars介绍 - 软件工程参考,解决您在VC6功能增强插件TabBars介绍 - 软件工程学习中工作中的难题,参考学习。
VC6功能增强插件TabBars介绍 Visual C 6.0的集成开发环境对项目文件的管理功能比前几个版本有了很大的增强但是对打开文档窗口的管理和普通的MDI编辑软件一样只能通过窗口菜单切换使用起来很不方便。
2001年的时候我在网上见到了一款名为“WndTab”的
VC插件它提供了一个集成在编辑窗口的table标签栏每个打开的文档对应一个标签栏的按钮通过鼠标点击按钮可以在文件之间快速切换大大方便了
代码查看和编辑除此之外这个插件还提供了C程序文件和头文件互相切换功能注2003年的时候“Wndtab”插件还在开发功能更多还支持二次插件开发但同时不稳定的毛病加重了且占用资源太多内存太少使用起来很困难。
这个插件一下子就征服了我sorry那个时候我不知道VA通过对“WndTab”的使用我也发现了很多问题比如文件切换只能在同一个目录中进行当程序文件和头文件分别放在不同的目录中时就不能切换。
还有一个很大的问题就是“WndTab”提供了很多并不实用仅仅是本人的看法如有雷同实属荣幸而且繁琐、容易出错的功能比如对标签栏的重组和编号功能这个功能在频繁地打开和关闭文件时经常令
VC的IDE崩溃。
好在“WndTab”的作者公开了源
代码于是我就开始研究“WndTab”的
代码于是便有了借鉴“WndTab”的成功经验开发一个功能更实用且简单、稳定的插件的想法于是“TabBars”便在2002年诞生了。
“TabBars”插件借鉴了“WndTab”插件的框架大刀阔斧地去掉了标签栏重组和编号功能简化了table标签栏的界面布局使用Button风格的自画table控件重新设计了工具栏图标界面更加美观。
持此之外TabBars还添加了很多实用的功能比如自动保存文件C程序文件和头文件互相切换支持多目录搜索功能注释选定的
代码块从注释的
代码块中恢复
代码为函数添加格式化函数声明注释
代码时自动添加操作者信息自动保存编译过程自动保存文件等等所有的功能都支持快捷键。
“TabBars”坚持
开源品质2002年发布的同时也发布了源
代码当时在网上引起了很大的反响很多朋友提出了宝贵意见修改bug于是便有了很多个版本我一直根据朋友的意见修改并维护着一个自己的版本并通过http://www.winmsg.com/cn/orbit.htm发布随后由于工作的原因有一段时间不能接触网络新版本“TabBars”的发布也受到了影响但是对“TabBars”的改进一直没有停止。
2003年我和Codeproject上的.dan.g.联系征得他的同意后将“项目
代码自动打包”和“OpenZip”两个功能添加到了“TabBars”注请参考codeproject上的文章Zip-up the source code for your latest CodeProject article我同时对这两个功能进行了修改原来的“项目
代码自动打包”功能只能将dsp目录中的文件打包但是考虑到很多软件项目的
代码文件和头文件都是分布在不同的目录中只打包当前目录有些不妥于是添加了指定整个目录打包的选项。
2004年我又将.dan.g.的“在
代码中添加 Visio-like diagrams的功能”集成到“TabBars”中注请参考codeproject上的文章Add and edit diagrams in your code with this Visio-like。
这两次修改的版本都没有正式发布只在朋友们中间小范围测试使用并不断修改。
2005年4月“TabBars”的测试工作完成正式定版发布版本号为1.0.17.31692005年6月
代码整理完成同时发布源
代码。
本文主要介绍TabBars插件的功能和使用方法关于如何编译、调试“TabBars”源
代码和
代码解读的问题请参阅“http://blog.csdn.net/orbit/”上的“TabBars”系列文章。
说了这么多你一定想知道“TabBars”到底什么样子有什么功能如何使用下面就介绍“TabBars”的功能和使用方法。
图1 就是“TabBars”集成到
VC编辑环境后的界面上面是一个工具条下面是用于文件快速切换的table标签栏 图1. 集成到
VC编辑环境的“TabBars” 一 使用table标签窗口快速切换文件 在一个大的项目中浏览不同文件中的
代码是一件痛苦的事情
VC所能够提供的帮助就是工作区中的“Files”窗口和菜单栏的“窗口”菜单当项目中的文件很多时使用起来非常不方便。
如果能够象属性页窗口那样通过一个Table控件在不同的窗口之间快速切换就能够大大的提高工作效率。
“TabBars”插件就实现了这个功能“TabBars”插件采用子类化subclass技术通过Hooker过滤工作区窗口的消息维护了一个table标签栏在新文档窗口创建的时候在table标签栏上创建对应的标签按钮文档关闭时删除标签按钮。
这样开发人员只需要在标签栏的按钮上点击鼠标就可以快速切换到这个文件。
在标签栏按钮上点击鼠标右键会弹出属性菜单 图2. 标签栏属性菜单 通过菜单的关闭窗口功能可以有选择的关闭窗口通过系统菜单可以访问Windows的文件系统菜单关于Windows文件系统菜单将在后面介绍。
用户可以在配置窗口设置标签栏的显示属性 图3. TabBars 选项 在“TabBars 选项”窗口可以设置标签栏的位置可以在编辑窗口的上面也可以设置在编辑窗口的下面满足不同习惯用户的要求。
还可以选择是否在标签栏显示图标是否支持系统菜单以及新打开窗口的位置对于系统资源比较有限的用户还可以选择打开窗口的最大限制。
二 C程序文件和头文件快速切换 对于一个管理良好的软件项目函数的声明和实现通常是分开放在一对对应的程序文件和头文件中C更是推崇这种做法于是在程序文件和对应的头文件之间切换查看函数的定义和实现就成了一个频繁的操作“TabBars”插件的C程序文件和头文件快速切换功能就是为了方便C/C程序员而设计的。
很多插件都有这个功能但是“TabBars”有自己的特色那就是支持多目录搜索使用户在浏览其它库的
代码时也能够得心应手。
要切换到当前打开文件对应的程序文件或头文件只需点击工具栏的图标就可以切换到对应的文件如果文件没有打开“TabBars”会自动打开文件。
通过插件配置窗口可以设置切换文件的搜索路径和文件匹配扩展名 图4. 文件切换选项 “TabBars”最多支持64个搜索目录根据软件项目的不同可以选择使用其中的部分搜索目录“TabBars”只从目录前面有X选择标记的目录中搜索对应的文件。
用户还可以指定文件搜索时对扩展名的匹配图4中的配置适用于C/C文件的切换。
“TabBars”首先用指定的匹配扩展名在文件所在的目录搜索对应的程序文件或头文件如果没有找到对应的文件就会依次搜索用户选择的搜索目录。
该功能的默认快捷键是CtrlShiftS 三 将当前打开的文件所在目录设为工作目录 有时候开发人员需要频繁地打开位于某个目录中的文件比如浏览某个软件包
代码的时候可是
VC集成环境的“当前目录”却在project文件所在的目录每次打开文件时文件选择对话框都会自动定位到project文件所在的目录还要手工换到软件包所在目录非常不方便。
“TabBars”提供的这个功能可以把当前打开的文件所在的目录设为“当前目录”这样再打开这个目录中的文件时
VC的文件选择对话框会自动定位到这个目录省去很多麻烦。
单击工具栏的按钮就可以轻松的改变集成环境的“当前目录”。
四 以文本方式打开资源文件
VC的class wizard在管理资源的时候经常会出错有时候两个控件被设置为相同的ID这会导致程序运行过程中存在潜在的错误另外有时候开发人员希望几个控件拥有连续的的ID通常用在一组相同类型的控件消息处理这就需要手工编辑资源文件。
“TabBars”给开发人员提供了不离开集成开发环境就能够以文本方式编辑资源文件的功能。
这个功能的使用很简单首先打开某个资源资源编辑窗口就成为当前窗口此时单击工具栏的按钮就可以以文本的方式打开资源文件。
五 为选定的
代码添加C风格的注释 这个功能就不多说了就是使用一对// 将选择的
代码编程C风格的注释如果用户还设置了“自动添加注释信息”则会在开始位置添加注释信息。
使用方法是首先在编辑窗口选择一块
代码然后单击工具栏的按钮
代码注释的效果如下图所示 图5. C风格
代码注释效果 该功能的默认快捷键是CtrlShiftB 六 为选定的
代码添加C风格的注释 嵌套的//注释是不允许的当选择的
代码块中已经有//注释的
代码块时使用C风格的注释就是唯一的选择了。
使用的方法是首先在编辑窗口选择一块
代码然后单击工具栏的按钮
代码注释的效果如下图所示 图6. C风格
代码注释效果 该功能的默认快捷键是CtrlShiftR 七 从注释
代码中恢复
代码 这个功能也不用多说了使用方法是首先在编辑窗口选择一块注释
代码对于C风格的
代码块要选择完整的//对然后单击工具栏的按钮。
该功能的默认快捷键是CtrlShiftU 八 添加格式化函数说明 这个功能就是在函数前面添加具有一定格式的说明使用方法是首先选择完整的函数声明下图所示的就是两种正确的选择 图7. 选择完整的函数声明 然后单击工具栏的按钮在弹出的对话框中输入对函数的说明和参数解释 图8. 输入函数说明 下图是生成的说明块的效果 图9. 格式化函数说明的效果 该功能的默认快捷键是CtrlShiftF 九 添加Visio-like diagrams 在你的
代码中添加几个简单的模块关系图是不是很酷感谢Codeproject上的.dan.g.为我们完成了这个工作。
这个功能的使用很简单首先在编辑窗口内将编辑光标定位到需要插入图表的位置然后单击工具栏的按钮就会弹出diagrams编辑窗口 图10. diagrams编辑窗口 下图是生成的
代码 图11. 生成的ASCII图表 如果要修改ASCII图表只需选择完整的ASCII图表
代码块然后单击工具栏的按钮。
十
VC工程
代码自动打包 直接在集成开发环境中将整个项目的源
代码打包压缩成zip文件是一个很实用的功能“TabBars”对此功能进入了深度开发使其功能更为完善。
当你要打包一个项目的
代码时单击工具栏的按钮就可以了。
“TabBars”插件会自动搜索整个工作区的所有项目然后定位到工作区的根目录用户也可以根据
代码组织的实际情况选择需要打包的
代码所在目录整个界面如图12所示 图12. 打包整个工作区 选择压缩文件的输出位置单击“确定”按钮就可以了。
由于
代码所在目录通常还有
VC编译生成的临时文件用户还可以选择打包过程中排除这些文件在“打包压缩设置”窗口中可以设置文件选择方式 图13. 打包压缩选项设置窗口 如果选择了“压缩完成后打开文件确认”选项“TabBars”会在打包完成后自动调用zip文件的关联软件打开生成的压缩包以确认是否正确生成了压缩文件。
十一 从zip压缩文件中打开
VC工程 通常从网上下载的例子
代码都是压缩在zip文件中的查看zip文件中的项目通常要将
代码解压缩到临时目录中然后用
VC打开项目“TabBars”提供了不离开
VC的集成开发环境就能够查看zip压缩文件中的
VC项目的功能。
单击工具栏的按钮在弹出的文件选择窗口中选择
VC项目所在的zip压缩文件“TabBars”会自动在指定的临时目录中展开压缩文件然后定位到工作区文件并打开。
如果一个zip文件中没有工作区dsw文件“TabBars”会弹出窗口让用户选择具体的项目文件dsp。
如果zip文件中有多个工作区文件“TabBars”会弹出如下窗口让用户选择一个工作区 图14. 选择工作区 用户可以通过图13所示的“打包压缩选项设置窗口”设置临时文件存放目录默认的临时文件存放位置是C:/unzipped 十二 自动保存文件 “TabBars”提供定时自动保存文件功能。
在图15所示的设置窗口中可以选择启用或关闭自动保存功能。
图15. 一般设置窗口 十三 自动添加注释信息 “TabBars”提供在注释
代码时梓潼添加注释信息的功能目前的版本支持添加注释人名称和时间戳。
可以在图15所示的设置窗口中选择自动添加的注释信息。
十四 自动生成工程编译日志 “TabBars”提供生成编译日志的功能会在dsp文件所在目录生成一个同名的log文件内部记载项目的编译次数和每次编译的情况记录编译次数可以为你的软件定版本提供依据。
以下时日志文件的部分内容示例 /本日志文件由 Tabbar Add-in1.17.3169 For Visual C 6.0 创建 //项目文件:C:/unzipped/CustDlg/CustDlg.dsp //如果文件增长的很大请删除除本节之外的其他信息 MAIN nBuildNumber 49 Build00000001 sStartTime 2005-08-18 16:17:53 sCompileUser orbit nErrors 0 nWarns 0 sEndTime 2005-08-18 16:17:57 Build00000002 sStartTime 2005-08-18 16:19:32 sCompileUser orbit nErrors 0 nWarns 0 sEndTime 2005-08-18 16:19:33 可以在图15所示的设置窗口中选择是否记录日志以及日志记录的内容。
十五 在table标签栏使用Windows系统菜单 在table标签栏单击鼠标右键会弹出文件属性菜单如果你在“TabBars选项”窗口中选择“在右键菜单使用系统菜单”选项则还可以使用Windows的系统菜单不离开
VC的集成开发环境就可以进行常规的文件操作 图16. 系统菜单示例
上一篇:
C++语言贪吃蛇游戏源代码
下一篇:
行走梵净山之(三)一世一遇,即是懂得