利用Visual C++设计真彩色工具条

来源:互联网 发布:h5大型游戏源码 编辑:程序博客网 时间:2024/06/11 21:53

  最终效果图   一直在寻找制作一个 24bit 及以上真彩工具条的简单有效方法,在各种VC站点都找到了很多有关这方面的文章和介绍,但是都存在一个不足的地方,介绍的不够详细,对初学者来说有点难度。最近终于有所发现,因此在这里将自己在制作真彩工具条方面的小经验介绍给大家,以期抛砖引玉。   在这里将介绍两个重点的内容,一个是制作真彩工具条的图形工具Visual toolbar,另一个是在程序中显示工具条的类CtrueColorToolBar。有了这两个利器,几乎能够非常简单快速的制作任何真彩工具条。呵呵。   1、Visual Toolbar工具   Visual Toolbar 是一个工具条制作工具,也是目前唯一的这样的小工具,几乎是一直梦寐以求的超级好用的小工具。呵呵,当我第一次拿到这个东西的时候,只有一个感慨“太实用了!”。   不知道大家以往作工具条的时候是怎样的,反正本人觉得很繁琐,程序员又不是美工,可是为了界面的pp,只好硬着头皮上了,不可能自己画那些图标,那就采用现成的吧,于是只能上网找一些好看得xp图标,然后用 photoshop 拼啊拼得,一不小心就得从来,费时费力。不知道别人都怎么做的,反正搜索了所有的制作真彩工具条的文章,都没有发现作者提供这样的信息或者方法。每次都很纳闷,当然也有一些作者提供了用ico图标作工具条的方法,不够相比这个有点复杂了。   Visual Toolbar 的下载地址:   http://visualtoolbar.126.com/   界面非常简单,一看就能够理解和动手操作。只需要加入图标就能够生成。如图所示:   简单吧,把你找到的一些pp的图标一个个加进去吧,就能自动合并成一个真彩工具条位图,而且还可以再拆分,重新组合,前后位置也可以从新排列。呵呵,不到一分钟,一个pp的bmp位图就完成了。而且还能同时生成normal图,hot图,和disable图。   有了这些位图,真彩工具条就算搞定了一半了。   2、CtrueColorToolBar类   CtrueColorToolBar 类是一个专门加载真彩位图制作 toolbar 的很实用的类。   这个类的下载地址是:http://www.codeproject.com/docking/TrueColorToolBar.ASP   确实不错,用这个类配合上面的工具,是一个很不错的组合。下面就用一个例子一步步来实现吧。系统 windwos2000+VC 6.0 + sp5。假设用 Visual toolbar 制作好的工具条如图:   (1) 先建立一个基于MFC的SDI标准程序,没啥好说的,一路默认吧。   (2) 这个时候程序会默认生成一个工具条,如图:   先这样放着吧,不理会。   (3)将CtrueColorToolBar类的两个文件拷贝到程序的目录下,并且在FileView中右键单击项目,加入CtrueColorToolBar类的两个文件,如图:   将这两个文件导入进去。然后从新编译一下程序,这时候会发现多了一个CtrueColorToolBar类,这就是了。   (4) 下面将我们准备好的工具条位图加入到程序中吧,Visual Toolbar能同时生成normal位图和diable位图,假设如下面的所示:   一个是normal图形,一个是disable图形:   Normal 位图   Disable 位图   先将这两个位图文件拷贝到程序的 res 目录下面,然后在 ResourceView 中单击右键,用 Import 导入这两个位图,程序会自动生成两个ID号,当然你可以修改ID为IDB_NORMAL和IDB_DISABLE。可以发现,这个例子想要的是7个 48×48 拼成的工具条。这个时候将用到系统自动生成的工具条了。   (5)找到 toolbar 资源下的 IDR_MAINFRAME 我需要的只是7个工具条按钮,这里多了几个,删除多余的吧。由于我们现在需要增加的是一个48×48的大小的按钮,所以还得修改按钮大小。双击其中任何一个按钮,修改大小为: 而每个按钮都默认了ID和操作,所以暂时先不管了。   (6)找到程序的CmainFrame框架类的成员变量m_wndToolBar,这东西就是工具条变量了,系统默认的是Ctoolbar类,将Ctoolbar修改成CtrueColorToolBar即可。 在程序的引用CtrueColorToolBar类的文件中包含其头文件,本例子是文件MainFrm.h的开头,增加一句: #include "TrueColorToolBar.h"   然后找到程序CmainFrame框架类的操作方法OnCreate函数。这里可是产生工具条的地方。增加这样一条语句: m_wndToolBar.LoadTrueColorToolBar( 48, IDB_NORMAL, IDB_NORMAL, IDB_DISABLED);   3个参数分别代表的意义是:48表示工具条按钮大小是48×48,第二个是normal工具条位图ID,第三个是hot工具条位图ID,最后一个是disable工具条位图ID。 增加的位置你参考例子代码。 现在可以编译运行了,怎么用,真彩工具条出来了吧。   (7)最后,你可以和一般程序一样,对系统产生的toolbar资源下的IDR_MAINFRAME工具条的按钮进行设置,编写相应的响应函数即可。例子程序中还有两个位图也添加到资源中了,你可以修改上面m_wndToolBar.LoadTrueColorToolBar函数中后3个参数看看效果,就知道了。   3、说明   本文很详细的介绍了制作真彩工具条的方法,并推荐了两个工具。个人感觉这种方法比较快速简单。希望能够给初学者提供一些帮助,也希望能够抛砖引玉得到其它好的方法。 文章出处:飞诺网(www.firnow.com):http://dev.firnow.com/course/3_program/vc/vc_js/20100630/267314.html

原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 qq漫游记录密码忘了怎么办 当你很烦的时候怎么办 当你烦的时候怎么办 面对刁蛮不讲理的老婆怎么办 老是想以前的事怎么办 被心机婊陷害了怎么办 分手了还被骚扰怎么办 苹果手机屏幕出现冷暖屏怎么办 我感觉媳妇不漂亮怎么办 90后赚不到钱怎么办 处对象感觉好累怎么办 谈朋友感觉好累怎么办 家庭条件不好娶老婆难办怎么办? 异地恋闹矛盾了怎么办 有人威胁要杀我全家怎么办 分手了借我的钱怎么办 脸打架打肿了怎么办 人家不加我qq好友怎么办 一个好友被删了怎么办 dnf脸黑怎么办还有办法 我想登别人微信怎么办 昌硕工资没到怎么办 昌硕离职不批怎么办 昌硕工资不到卡怎么办 上海人去苏州工作社保怎么办 娶个个脾气暴躁的媳妇怎么办 满脸的黑头痘痘怎么办 脚底磨起泡不敢走路怎么办 老婆老是找异性朋友怎么办 喜欢的人有对象怎么办 遇到了更喜欢的怎么办 8岁骨龄11岁怎么办啊 13岁初中生有思想不听话怎么办 交朋友找对象喜欢颜值高的怎么办 儿子找对象不听父母怎么办 缺爱怎么办的搞笑回答 对象说有人追她怎么办 说了一句话媳妇非常生气怎么办 柔顺后头发太臭怎么办 积分兑换手机被骗了怎么办 老板对你的上级不满怎么办