|
界面贴图 是一个非常常用的技术 因为本身VC的窗口界面很单调 方框状 无特色 如果想要让窗口变的形状丰富
就是界面贴图技术了 这类似于易语言中的 置外形图片 这个函数的效果
1、将对话框的 Title Bar 属性置成 False;
2、将对话框的 Border 属性置成 Thin
3、插入背景图片资源,ID为:IDB_BK_IMG
响应 WM_ERASEBKGND 消息进行图片的加载及背景的绘制:
BOOL CDrawTestDlg::OnEraseBkgnd(CDC* pDC)
{
CDC memDC;
memDC.CreateCompatibleDC(pDC);
BITMAP bmp;
CBitmap bkImg;
bkImg.LoadBitmap(IDB_BK_IMG);
bkImg.GetBitmap(&bmp);
memDC.SelectObject(&bkImg);
//SetWindowPos(NULL, 0, 0, bmp.bmWidth, bmp.bmHeight, SWP_NOMOVE|SWP_NOZORDER);
CRect rect;
GetClientRect(&rect);
pDC->StretchBlt(0, 0, rect.Width(), rect.Height(), &memDC, 0, 0, bmp.bmWidth, bmp.bmHeight, SRCCOPY);
memDC.DeleteDC();
return TRUE;
return CDialog::OnEraseBkgnd(pDC);
}
|
|