首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

双缓冲有关问题

2012-07-29 
双缓冲问题CRect rectGetClientRect(&rect)CDC MemDCCBitmap MemBitmapMemDC.CreateCompatibleDC(NULL

双缓冲问题
CRect rect;
GetClientRect(&rect);

CDC MemDC;
CBitmap MemBitmap;
MemDC.CreateCompatibleDC(NULL);
MemBitmap.CreateCompatibleBitmap(pDC,rect.Width(),rect.Height());
CBitmap *pOldBit=MemDC.SelectObject(&MemBitmap);
MemDC.FillSolidRect(0,0,rect.Width(),rect.Height(),RGB(255,255,255));

DrawText(MemDC);
/*CString str;
str.Format(L"英雄:%s",m_sHero);
MemDC.TextOut(m_Width+10,80,str);
str.Format(L"步长:%d",m_nCount);
MemDC.TextOut(m_Width+10,130,str);*/

为什么注释的这一段不能单独放在一个函数DrawText(CDC MemDC)里面?
向上面这样就error C2248: “CObject::CObject”: 无法访问 private 成员(在“CObject”类中声明)
如果没有放在DrawText(CDC MemDC)里面怎正常显示。搞不明白。
知道的说说具体的原因啊,本人新手

[解决办法]
改成这个
DrawText(CDC &MemDC)
{
str.Format(L"英雄:%s",m_sHero);
MemDC.TextOut(m_Width+10,80,str);
str.Format(L"步长:%d",m_nCount);
MemDC.TextOut(m_Width+10,130,str);
}

热点排行