您的位置:首页 > 其它

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

2011-08-09 13:31 267 查看
网上查了好久,给得分不少但都不是完整的答案,还不能用,郁闷。。。。

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

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

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);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  工具