请问:怎么在工具栏指定的位置贴上一个PNG的图片
请教思路和方法

解决方案 »

  1.   

    附加:这个PNG图片作为背景,然后在上面有按钮控制
      

  2.   

    参考一下文章:VC(MFC)在工具栏中使用PNG图片
      

  3.   

    从CToolBar派生新类, 添加WM_ERASEBKGND消息,在OnEraseBkgnd中使用CImage加载PNG图片,并绘制到传入的pDC句柄上,返回1
      

  4.   

    http://hi.baidu.com/gxj1680/blog/item/d239490b6e05d41495ca6b02.html
      

  5.   

    我用的是CMFCToolBar,不是CToolBar,可以实现不
      

  6.   

      if (m_hWnd == NULL) 
      return TOOBAR_ERR; 
      CToolBarCtrl& ToolBarCtrl = GetToolBarCtrl(); 
      CSize ButtonSize; 
      GetButtonImgSize(ButtonSize); 
      CBitmap BmpBack; 
      CRect BKRect; 
      GetToolImgRect(BKRect); 
      CDC * pWndDC = GetWindowDC(); 
      BmpBack.CreateCompatibleBitmap(pWndDC, BKRect.Width(), BKRect.Height()); 
      ReleaseDC(pWndDC); 
      CImageList ImgList; 我用的是CMFCToolBar,红色的部分出错,怎么办哦
      

  7.   


    直接用CMFCToolBar的对象啊,不要去获取
      

  8.   


    你的CMFCToolBar变量在哪,拿过来直接用
      

  9.   

    ImgList.Create(ButtonSize.cx, ButtonSize.cy, ILC_COLORDDB | ILC_MASK, 1, 1); 
      ImgList.Add(&BmpBack, RGB(0,0,0) ); 
     
      ToolBarCtrl.SetImageList(&ImgList); 
    MFCToolBar里面没有SetImageList的方法,怎么用哦
      

  10.   


    参考一下:
    http://social.msdn.microsoft.com/Forums/en-ca/vcgeneral/thread/11af9d3b-c630-4812-8f72-e009511ff26c
      

  11.   


    新MFC的资料确实比较少。
    参考一下BMP的:
    http://club.itqun.net/showtopic-159731.html
      

  12.   


    你先不要用PNG,就用BMP试试,BMP能行的话可以用CImage转
      

  13.   

    我已经把PNG的图转成IMAGE 指针了,然后就是画不出来,疯了都,55