从VC2008的SP1开始,新加入了很多MFC控件,其界面效果虽然比不上WPF,但与之前的控件相比,也已经是飞越了。无奈目前大家对它的研究还是比较少,虽然自带了一些示例程序,仍然不能满足开发的方方面面。貌似C++的高手更喜欢旧版的MFC控件,这也难怪,新版的控件效果,用旧版的也能实现,只是有些麻烦,也可能高手们都不用MFC吧。我是刚从.net转入C++的新兵,用惯了framework提供的简单控件,再用这MFC,别提多别扭了,唉,没办法,工作嘛。
好了,言归正传,这段时间用C++开发应用,使用了最新的VS2010,向导自动生成的MFC框架里便自动应用了新版MFC控件,想实现大尺寸+24位真彩色的工具栏,从网上查到的多是使用CToolbarCtrl实现,在经过了几天的沉淀后,终于找到了一条捷径(估计是目前比较简单就能实现这个功能的方法了),知识碎片都是从网上获得的,成果也应跟大家分享。
第一步:准备图片
不知道大家是如何制作工具栏图片的,我使用的方法是,使用Photoshop将几个32×32的图标横向排成一排,图标之间不需要留间隙,确保背景是透明的,然后保存成png文件。为了让VS能够把该图片做为资源导入,需要转为bmp文件:用画图程序打开png文件,另存为24位位图文件。最后,把bmp文件拷贝到项目的res文件夹中,接下来就可以导入资源了,这里假设导入的资源ID为IDB_BITMAP1(这也是默认的图片资源ID)ÿ