VC++中MFC的BitBlt函数问题。。。。。
CDCimage;if(!image.CreateCompatibleDC(pDC)){return;}BITMAPbm;m_Bitmap.GetBitmap(&bm);...
CDC image;
if(!image.CreateCompatibleDC(pDC))
{
return;
}
BITMAP bm;
m_Bitmap.GetBitmap(&bm);
pDC->BitBlt(0,0,bm.bmWidth,bm.bmHeight,&image,0,0,SRCCOPY);
pDC->MoveTo(0,0);
pDC->LineTo(1000,1000);
这是在CView中的一段代码,在执行BitBlt函数时,视图没有任何变化,但是下面的画线视图却有反应,画出了对应的线条。。。询问是怎么回事? 展开
if(!image.CreateCompatibleDC(pDC))
{
return;
}
BITMAP bm;
m_Bitmap.GetBitmap(&bm);
pDC->BitBlt(0,0,bm.bmWidth,bm.bmHeight,&image,0,0,SRCCOPY);
pDC->MoveTo(0,0);
pDC->LineTo(1000,1000);
这是在CView中的一段代码,在执行BitBlt函数时,视图没有任何变化,但是下面的画线视图却有反应,画出了对应的线条。。。询问是怎么回事? 展开
展开全部
这个问题应该是这样,贴图一般都是在WM_ERASEBKGND中的进行处理的,而且最后的返回值是TRUE贴图才成功,看看你是不是最后调用基类的函数的消息了,你可以这样改,把return CView::OnEraseBkgnd(pDC)改成return TRUE;
如: return TRUE;
// return CView::OnEraseBkgnd(pDC)
如: return TRUE;
// return CView::OnEraseBkgnd(pDC)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你没有将图片载入到内存里面啊。。。iamge里面什么都没有怎么可以用BitBlt复制呢?
可以这样:
CBitmap* pOldBitmap=image.SelectObject(&m_Bitmap);
就好了。。。。。
可以这样:
CBitmap* pOldBitmap=image.SelectObject(&m_Bitmap);
就好了。。。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
没CBitmap类的变量载入图片呀
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询