CMFCToolBar 添加真彩图片

之前转载过一篇过于mfc工具栏添加图片的文章,但是今天在使用CMFCToolBar时发现和CToolBar 是不一样的

第一步:准备图片

不知道大家是如何制作工具栏图片的,我使用的方法是,使用Photoshop将几个32×32的图标横向排成一排,图标之间不需要留间隙,确保背景是透明的,然后保存成png文件。为了让VS能够把该图片做为资源导入,需要转为bmp文件:用画图程序打开png文件,另存为24位位图文件。最后,把bmp文件拷贝到项目的res文件夹中,接下来就可以导入资源了,这里假设导入的资源ID为IDB_BITMAP1(这也是默认的图片资源ID),因为下面会用到。

 

第二步:修改工具栏按钮大小

这个最简单,只需要选中按钮,在属性栏中输入需要的尺寸即可,尺寸要与图标大小相同,这里是32×32。然后根据需要创建按钮、设置按钮的ID。

(附:工具栏上会一直有一个按钮,你修改它,就又会跑出来一个新的,这也就是创建按钮的操作;删除按钮的方法是:将按钮拖离工具栏,用Delete键不管用,Delete只是删除了按钮上的图像;插入分隔符的方法也很简单:横向右拖动按钮一定距离,就会插入分隔符,反方向再拖一下,就删除分隔符了)

 

第三步:修改工具栏创建代码

在MainFrame.cpp的OnCreate函数中找到下面的代码:

if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) || !m_wndToolBar.LoadToolBar(theApp.m_bHiColorIcons ? IDR_MAINFRAME_256 : IDR_MAINFRAME))

将其改为:

if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||!m_wndToolBar.LoadToolBar(IDR_MAINFRAME_256, 0, 0, TRUE, 0, 0, IDB_BITMAP1))

 

好了,这三步做完,如果中间没出现什么差错,运行程序应该可以看到效果了,祝大家好运!

你可能感兴趣的:(delete,mfc,工具)