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

来源:互联网 发布:大数据java开发工程师 编辑:程序博客网 时间:2024/05/29 15:42
一、添加背景图片

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中添加背景图片和制作图片按钮

二、制作图片按钮
导入两个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
}