第一步
准备一张好看的背景图
第二步
在对话框头文件中添加背景刷子变量
public:
CBrush m_Brush;//背景图画刷
第三步
在对话框初始化函数OnInitDialog()中创建画刷。
//加载背景图
CImage img;
img.Load(_T(".\\res\\beijing.jpeg"));//载入指定路径的图片
CBitmap bmpTmp;
bmpTmp.Attach(img.Detach());//格式转 bmp格
m_Brush.CreatePatternBrush(&bmpTmp);//创建背景画刷
第四步
添加对话框消息WM_CTLCOLOR函数OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor);
并在里边设置背景透明,返回我们自己创建的画刷。
HBRUSH CMFC_TESTDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
pDC->SetBkMode(TRANSPARENT);
return m_Brush;
//HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);
//return hbr;
}