您的位置:首页 > 其它

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

2012-08-11 17:15 489 查看
一、添加背景图片

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);

}





二、制作图片按钮

导入两个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
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: