MFC对话框背景图案问题

我只会设置自己画的图为对话框背景,因为我引入位图资源的时候,我电脑里各种格式的图片都无法引用,请问高手怎么办啊... 我只会设置自己画的图为对话框背景,因为我引入位图资源的时候,我电脑里各种格式的图片都无法引用,请问高手怎么办啊 展开
 我来答
Jordon归来
2010-08-01 · TA获得超过157个赞
知道答主
回答量:94
采纳率:0%
帮助的人:90.7万
展开全部
在dlg类的OnPaint()函数中加入如下代码:
else
{
//CDialog::OnPaint();//要禁止这个调用
CPaintDC dc(this);
CRect rect;
GetClientRect(&rect);
CDC dcMem;
dcMem.CreateCompatibleDC(&dc);
CBitmap bmpBackground;
bmpBackground.LoadBitmap(IDB_BITMAP1); //IDB_BITMAP1是你自己的图对应的ID,IDB_BITMAP1即为我刚刚加入的位图资源!
BITMAP bitmap;
bmpBackground.GetBitmap(&bitmap);
CBitmap *pbmpOld=dcMem.SelectObject(&bmpBackground);
dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);
}

以上代码即可实现插入位图资源作为对话框的背景图案了!
另外有点必须注意:
每次添加完新的位图资源,必须要清空上一次编译生成的文件!
这就需要在编译前选中“组建”中的“清除”选项进行清理!
清除完成以后,得再一次进行预编译,即先编译“StdAfx.cpp”,再进行后续编译生成工作!

楼主没能成功使用导入的位图,估计就是没有进行清理工作的缘故!
个人经验之谈,仅供参考!
希望能够帮到你!
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式