为对话框添加BMP图片作为背景
(1)新建一个基于对话框的MFC应用程序DialogBackgroundTest,删除对话框中原有控件。
(2)把res目录下的bk.bmp导入到工程中,并命名为IDB_BK。
(3)为对话框类CDialogBackgroundTestDlg添加成员变量CBrush m_brh;
在初始化函数BOOL CDialogBackgroundTestDlg::OnInitDialog()中添加如下代码:
CBitmap bmp;bmp.LoadBitmap(IDB_BK);m_brh.CreatePatternBrush(&bmp);bmp.DeleteObject();//264,189是图片的尺寸,让对话框大小和图片一样大,使得图片能完全显示MoveWindow(0,0,264,189);CenterWindow();//对话框居中
(4)为对话框添加WM_CTLCOLOR消息处理函数,并添加代码如下:
HBRUSH CDialogBackgroundTestDlg::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{HBRUSH hbr = CDialogEx::OnCtlColor(pDC, pWnd, nCtlColor);// TODO: 在此更改 DC 的任何特性if (pWnd == this)return m_brh;// TODO: 如果默认的不是所需画笔,则返回另一个画笔return hbr;
}
(5)保存并运行工程,运行结果如下图所示:

本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
