VC双画布消除屏幕闪烁实例详解
VC双画布消除屏幕闪烁实例详解
在vc中贴图时,直接贴图到屏幕的CDC,会因为图面贴入的时间不同而造成屏幕的闪烁。解决这个问题的办法是先把图面画到内存画布上,在一次画到屏幕,内存映射到屏幕很快,所以不会造成闪烁。
实例代码:
CDCm_dcMem;//创建内存画布
CBitmapm_bmpMemDC;//创建内存画布的
//初始化内存画布
CDC*pDC=GetDC();
if(pDC->GetSafeHdc())
{
if(!m_dcMem.CreateCompatibleDC(pDC))
{
ReleaseDC(pDC);
return;
}
if(!m_bmpMemDC.CreateCompatibleBitmap(pDC,rect.Width(),rect.Height()))
{
ReleaseDC(pDC);
return;
}
m_dcMem.SelectObject(&m_bmpMemDC);
ReleaseDC(pDC);
//把图像画到内存画布上
//内存画布映射到屏幕
pDC->BitBlt(0,0,rect.Width(),rect.Height(),&m_dcMem,0,0,SRCCOPY);
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
热门推荐
10 朋友新年祝福语大全 简短
11 新年祝福语简短大方兔年
12 搬新家礼物祝福语简短
13 同学见面花束祝福语简短
14 五一假期祝福语幽默简短
15 离职欢送敬酒祝福语简短
16 对学弟的祝福语简短
17 考老师辞职祝福语简短
18 祝福语驱散霉运的话简短