在VC中CToolBar,依据状态改变,动态改变工具栏显示图片

网上查了好久,给得分不少但都不是完整的答案,还不能用,郁闷。。。。

折腾了半天终于搞出来了,分享给大家,希望遇到这个问题的人看到。


我做了一个函数,直接调用就可以,至于原理看了代码我想你稍微用心一下就会明白。

void CMainFrame::ToolbarImgChange(int iDest, int iSrc, int iSpcHold)
{
CToolBarCtrl & tbc = m_wndToolBar.GetToolBarCtrl(); 
CImageList * pTbi = tbc.GetImageList(); 
pTbi->Copy(iSpcHold,iDest);
pTbi->Copy(iDest,iSrc);
pTbi->Copy(iSrc,iSpcHold);
tbc.SetImageList(pTbi); 
m_wndToolBar.Invalidate();
}



最好,把如何隐藏占位图片也贴出来一并共享,在建立成功工具栏后调用。

CToolBarCtrl &tbc = m_wndToolBar.GetToolBarCtrl();
tbc.SetState(ID_STATE_ONLINE,TBSTATE_HIDDEN);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值