利用CMFCToolBar从24位BMP图像创建工具栏

本文详细介绍了如何使用CMFCToolBar类来加载和显示24位BMP图像,从而创建功能丰富的自定义工具栏。通过实例步骤,读者将学习到如何正确处理不同颜色深度的图像,以及在MFC应用程序中实现高效工具栏设计的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

/*网络案例:
注意是利用CMFCToolBar,而不是CToolBar;图像是24位的,Visual Studio自带的工具栏编辑器是不能编辑的;而且是添加一个工具栏,利用应用程序向导生成的工具栏必须保留,所以最后是二个工具栏。*/

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))
{
	TRACE0("Failed to create toolbar\n");
	return -1;      // fail to create
}

if (!m_wndFEToolBar.CreateEx(this, 
	TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP | CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC | TBSTYLE_TOOLTIPS , 
	CRect(1, 1, 1, 1), IDR_FE_TOOLBAR) ||
	!m_wndFEToolBar.LoadToolBar(IDR_FE_TOOLBAR, 0, 0, TRUE, 0, 0, IDB_FE_TB_BITMAP)) {
		TRACE0("Failed to create toolbar\n");
		return -1;      // fail to create
}
/*请注意m_wndFEToolBar.CreateEx最后一个参数,这个参数与显示无关,但是非常重要。然后是LoadToolBar方法的第四个参数为TRUE,如果为FALSE,那么新创建的工具栏将不可显示。
显示的时候会出现问题,比如两个工具栏,一个高度为16(一般默认的),自定义的为32,在T
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值