zoukankan      html  css  js  c++  java
  • 【MFC】动态创建CMFCToolbar图标不显示问题

    最近遇到一个问题,需要动态的从xml文件读取一系列图标文件,加载到一个toolbar中,由于使用的是vs2008 with sp1 feature pack,自然想到用CMFCToolbar来做,思路也很简单

    1、将图标文件加入CMFCToolBarImages。

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

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

    4、在MainFrm中动态创建工具条。

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

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

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

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

  • 相关阅读:
    PL/SQL异常处理
    spool命令
    Oracle循环语句
    替换变量&和&&
    OCP-052 & 053部分答案解析
    Oracle IF & CASE语句
    PL/SQL概念
    AIX下如何根据端口号查找相应的进程
    (转)Tomcat启动报Error listenerStart错误
    Suse碎碎念
  • 原文地址:https://www.cnblogs.com/xiaosuiba/p/3359095.html
Copyright © 2011-2022 走看看