用CBitmapButton,别用CButton 。

解决方案 »

  1.   

    可以的,MSDN:
    CButton::SetBitmap
    Unlike CBitmapButton, which uses four bitmaps per button, SetBitmap uses only one bitmap per the button. When the button is pressed, the bitmap appears to shift down and to the right.按照一下步骤来操作一次!!
    1.打开BITMAP按钮的属性页,在Style中选中Bitmap。
    2.对话框类的头文件中定义成员变量(使用ClassWizard加入这个成员变量)
               CButton m_BitmapBtn;
    3.创建位图资源:
    位图资源:IDB_BITMAPBUTTON
    4.在初始化中加入如下代码: 
    HBITMAP hBmp=::LoadBitmap(AfxGetInstanceHandle(),
    MAKEINTRESOURCE(IDB_ BITMAPBUTTON));
    m_BitmapBtn.SetBitmap(hBmp);
      

  2.   

    基本思想,
    获得CButton 的DC,然后就象在普通DC上画画,写字,贴图是一样的,
    用GetDC()获得DC,
      

  3.   

    CBitmapButton 需要4个bitmap,不如用CIconButton好些