用MFC建了基于对话框的工程,要怎么添加背景图片啊!!! 急求!!!

如题所述

先创建图片
方法一创建图片 CBitmap::LoadBitmap(资源名称);
方法二创建图片 CBitmap::LoadBitmap(资源ID);

创画刷 CBrush::CreatePatternBrush( 创建的CBitmap);

重载这个函数
HBRUSH CDailog::OnCtlColor(CDC* pDC, CWnd* pWnd, UINT nCtlColor)
{
HBRUSH hbr = CSizeDlg::OnCtlColor(pDC, pWnd, nCtlColor);

// TODO: Change any attributes of the DC here
//功能: 设置静态窗口背景为空
HBRUSH hbr = NULL;

switch(nCtlColor)
{
case CTLCOLOR_STATIC: //静态框
break;

case CTLCOLOR_DLG: //对话框
if(NULL == m_clrBkBrush.m_hObject)
hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
else
hbr = m_clrBkBrush;
break;

default:
hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor);
break;
}

// TODO: Return a different brush if the default is not desired
return hbr;
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-09-06
加一个图片框,在属性中选择位图,然后选择你的位图图片ID
第2个回答  2011-09-05
我记得可以在对话框插入一个静态文本框,再设置它的属性为静态图片,并选所要的图片资源,当然,图片得自己弄到位图资源里。这样可以在对话框插入一个图片,但做背景我就不知道了。问问高手吧,我也好久没做MFC了^_^
第3个回答  2011-09-06
上面直接有picture控件的 你把里面属性指向你要加载的图片位置就行了
第4个回答  2011-09-11
resources中导入一个Bitmap资源
类中声明一个CBitmap m_bitmap;
构造函数中导入位图资源ID:m_BKbitmap.LoadBitmap(资源ID);
OnPaint()函数中(没有就自己加一个)添加如下代码: BITMAP bm;
CRect rect;
CDC dcMem;
m_BKbitmap.GetBitmap (&bm);
GetClientRect(&rect);

dcMem.CreateCompatibleDC (&dc);
CBitmap *oldbitmap=dcMem.SelectObject (&m_BKbitmap);
dc.BitBlt (0,0,rect.right - rect.left ,rect.bottom -rect.top,&dcMem,0,0,SRCCOPY);
dcMem.SelectObject(oldbitmap);
CDialog::OnPaint();
OK
相似回答