我在按钮上加载了图标,设置按钮不可用的时候重新加载灰显的图标,可是显示不出来。大家帮帮忙啊,先谢过了!

解决方案 »

  1.   

    可以参考CBUTTONST,这有个例子http://www.vckbase.com/document/viewdoc/?id=518
    LAMP和SEARCH按钮差不多就是这种效果
      

  2.   

    CButtonST实现的是鼠标移动到按钮上图片变化的功能,按钮不可用的时候不行
      

  3.   

    我找到解决方法了,参考网址:http://dev.csdn.net/htmls/66/66766.html
    1、在资源编辑的时候选中按钮的Owner  draw即可,不需要选择Bitmap属性!  
    2、在程序中定义一个CBitmapButton成员变量。不能使用ClassWizard为按钮映射一个CButton变量,然后改为CBitmapButton,这么做并不能将按钮直接映射为CBitmapButton类的对象,反而会出现初始化错误。  
    3-1、使用CBitmapButton::LoadBitmaps装载各种状态的图片,使用SubclassDlgItem关联到想要的按钮,使用CBitmapButton::SizeToContent函数使按钮适合图片大小。。注意Loadbitmaps一定要在关联到按钮之前进行!  按照上面的注意事项做如下操作即可
    CBitmapButton m_syncbtn;m_syncbtn.LoadBitmaps(IDB_DOWNLOAD_ALL_GRAY, 0, 0, 0);
    m_syncbtn.SubclassDlgItem(IDC_BUTTON_DOWNALL, this);
    m_syncbtn.SizeToContent();
    m_syncbtn.EnableWindow(FALSE);m_syncbtn.LoadBitmaps(IDB_DOWNLOAD_ALL_COLOR, 0, 0, 0);
    m_syncbtn.EnableWindow(TRUE);
      

  4.   

      CButtonST中的LAMP是平面按钮实现鼠标移到按钮上图标变化,SEARCH是一个突起按钮,也是鼠标移上去图标编号,并不是实质上的按钮不可用
      仅仅实现这个功能还去添加类也没必要,谢谢大家热心帮我解决问题哦!