关于mfc中添加背景图片,快快,在线等!!!!!!!!!!!
我用如下代码:CPaintDCdc(this);CRectrect;GetClientRect(&rect);CDCdcMem;dcMem.CreateCompatibl...
我用如下代码:
CPaintDC dc(this);
CRect rect;
GetClientRect(&rect);
CDC dcMem;
dcMem.CreateCompatibleDC(&dc);
CBitmap bmpBackground;
bmpBackground.LoadBitmapA(IDB_BITMAP);
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);
然后运行所未识别标识符
: error C2065: “IDB_BITMAP”: 未声明的标识符
还应该怎么加代码啊啊 啊啊,。mfc新手,求指点啊啊啊 展开
CPaintDC dc(this);
CRect rect;
GetClientRect(&rect);
CDC dcMem;
dcMem.CreateCompatibleDC(&dc);
CBitmap bmpBackground;
bmpBackground.LoadBitmapA(IDB_BITMAP);
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);
然后运行所未识别标识符
: error C2065: “IDB_BITMAP”: 未声明的标识符
还应该怎么加代码啊啊 啊啊,。mfc新手,求指点啊啊啊 展开
3个回答
展开全部
1、把你要加载的图片拷贝到VC的资源文件夹,图片后缀.bmp,然后按Ctrl+R组合键,选择Bitmap,点击import按钮下载图片资源,ID为IDB_BITMAP;
2、添加Picture控件,在属性框中的Type:Bitmap,Image:IDB_BITMA,这样就可以简单的设置界面背景;执行结果无法拷贝!
3、然后把你的代码改为如下的代码:
CDC *memDC=new CDC();
CPaintDC pDC(this);
CBitmap *pBitmap=(CBitmap *)GetDlgItem(IDB_BITMAP);
CRect ChildRect;
GetClientRect(&ChildRect);
pBitmap->CreateCompatibleBitmap(pDC,ChildRect.Width(),ChildRect.Height());
memDC->CreateCompatibleDC(pDC);
memDC->SelectObject(pBitmap);
pDC->BitBlt(ChildRect.left,ChildRect.top,ChildRect.Width(),ChildRect.Height(),
memDC,ChildRect.left,ChildRect.top,SRCCOPY);
memDC->DeleteDC();
pDC->DeleteDC();
调试看看有没有错误,若有问题也许是LoadBitmap(),请参考MSDN文档,否则与我联系。
2、添加Picture控件,在属性框中的Type:Bitmap,Image:IDB_BITMA,这样就可以简单的设置界面背景;执行结果无法拷贝!
3、然后把你的代码改为如下的代码:
CDC *memDC=new CDC();
CPaintDC pDC(this);
CBitmap *pBitmap=(CBitmap *)GetDlgItem(IDB_BITMAP);
CRect ChildRect;
GetClientRect(&ChildRect);
pBitmap->CreateCompatibleBitmap(pDC,ChildRect.Width(),ChildRect.Height());
memDC->CreateCompatibleDC(pDC);
memDC->SelectObject(pBitmap);
pDC->BitBlt(ChildRect.left,ChildRect.top,ChildRect.Width(),ChildRect.Height(),
memDC,ChildRect.left,ChildRect.top,SRCCOPY);
memDC->DeleteDC();
pDC->DeleteDC();
调试看看有没有错误,若有问题也许是LoadBitmap(),请参考MSDN文档,否则与我联系。
展开全部
点资源选项——》添加资源——》图像——》选你的图,名称设置为IDB_BITMAP
就这样。
就这样。
更多追问追答
追问
我已经加在资源里面了。。。还是说没有声明。那个应该在别的地方声明一下吧,我就是不知道在哪
追答
在资源列表的bitmap文件夹下有ID为IDB_BITMAP的图吗
用这种方式添加就不用说明了啊
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
加上头文件include "resource.h"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询