【MFC】动态建立CMFCToolbar图标不显示问题

最近遇到一个问题,须要动态的从xml文件读取一系列图标文件,加载到一个toolbar中,因为使用的是vs2008 with sp1 feature pack,天然想到用CMFCToolbar来作,思路也很简单函数

一、将图标文件加入CMFCToolBarImages。工具

二、设置CMFCToolbar::SetUserImages为第1步中的CMFCToolBarImages。google

三、继承CMFCToolbar,在OnCreate中动态调用SetButtons或者InsertButton函数添加相应按钮,或者在外部调用InsertButton public版本(引用)添加按钮。xml

四、在MainFrm中动态建立工具条。继承

一切就绪后,问题出现了,工具栏图标没有显示,而鼠标hover时tooltip中却能够看见加载的图标。图片

在网上google一天,始终得不到答案。ip

无奈之下,试着在Create后调用LoadToolbar,加载一个已经存在的toolbar资源,而后调用RemoveAllButtons,删除本来的全部按钮,而后再动态添加按钮,奇迹出现了!全部图片都能构显示出来。资源

翻看源码后,任然没有找到答案,只有先记在这里。但愿知道的人能告诉一声。源码

相关文章
相关标签/搜索