VCではダイアログに背景画像を追加します.

883 ワード

From:http://blog.ezcn8.com/2011/06/11/vc%E4%B8%AD%E4%B8%BA%E5%AF%B9%E8%AF%9D%E6%A1%86%E6%B7%BB%E5%8A%A0%E8%83%8C%E6%99%AF%E5%9B%BE%E7%89%87/
VCではダイアログに背景画像を追加するのも簡単です.次の2つの方法があります.
1.ブラシを使うCBrush
void CDlg::OnPaint()
{
	CPaintDC dc(this);//          

	//      
	CBitmap bitmap;
	bitmap.LoadBitmap(IDB_BITMAP1);

	CBrush brush(&bitmap);//    
	dc.SelectObject(brush);
	CRect rect;
	GetClientRect(rect);//       
	dc.Rectangle(rect);//   ,         
}
2.CDCを使う:bitblt関数を直接描きます.
CPaintDC dc(this);//           
CBitmap bmp;
bmp.LoadBitmap(IDB_BITMAP1);
CDC dcMemory;
dcMemory.CreateCompatibleDC(&dc);//    DC
CBitmap *pOldBmp = dcMemory.SelectObject(&bmp);
CRect rect;
GetClientRect(rect);
dc.BitBlt(0, 0, rect.Width(), rect.Height(), &dcMemory, 0, 0, SRCCOPY);
dcMemory.SelectObject(pOldBmp);