在MFC中添加背景图片和制作图片按钮

一、添加背景图片

1、把你的图包含到程序的“Bitmap资源”里,提示说该资源使用了大于256色的调色板,在VC里无法编辑等等,点确定就可以 
(一定要下载bmp格式的图片,可以把jpg。png等格式图片转换成bmp格式图片)
2、定位到  void CXXXDlg::OnPaint(),在if()...else()中的else()下添加如下代码   
 else   
 {   
         //CDialog::OnPaint();//要禁止这个调用   
         CPaintDC   dc(this);   
         CRect   rect;   
         GetClientRect(&rect);   
         CDC   dcMem;   
         dcMem.CreateCompatibleDC(&dc);   
         CBitmap   bmpBackground;   
         bmpBackground.LoadBitmap(IDB_BITMAP);   
                 //IDB_BITMAP是你自己的图对应的ID   
         BITMAP   bitmap;   
         bmpBackground.GetBitmap(&bitmap);   
         CBitmap   *pbmpOld=dcMem.SelectObject(&bmpBackground);   
         dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,   
        bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);   

 }


在MFC中添加背景图片和制作图片按钮_第1张图片

二、制作图片按钮
导入两个bmp格式的图片(要是索引模式的,在PhotoShop中可以加工)。然后在 CTTDlg::DoDataExchange函数中添加代码 DDX_Control( pDX, IDC_BUTTON1, m_BitmapBtn );然后在BOOL CTTDlg::OnInitDialog()函数中添加代码 m_BitmapBtn.LoadBitmaps(IDB_BITMAP1,IDB_BITMAP2);//这句是我加的即可
void CTTDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Control( pDX, IDC_BUTTON1, m_BitmapBtn );//这句是我加的
//{{AFX_DATA_MAP(CTTDlg)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}


你可能感兴趣的:(mfc,button)