mfc 双缓冲绘制背景
2016-02-29 16:54
113 查看
void CMainPropertySheet::OnPaint()
{
CPaintDC dc(this); // device context for painting
CRect rc,rect;
CDC dcMem;
GetClientRect(&rc);
CBitmap bmp, *pOldBit; //内存中承载临时图象的位图
bmp.CreateCompatibleBitmap(&dc,rc.Width(),rc.Height());
dcMem.CreateCompatibleDC(&dc);
pOldBit = dcMem.SelectObject(&bmp);
CPropertyPage* pg=this->GetPage(m_btnDown-IDC_D_BTN);
pg->MoveWindow(35+addw,14+addh,rc.Width()-addw-15,rc.Height()-addh-65);
rect.top = rc.top;
rect.bottom = 14+addh;
rect.left = rc.left;
rect.right = rc.right;
dcMem.FillSolidRect(rc,RGB(9,81,129));
rect.top =rc.Height()-52;
rect.bottom = rc.bottom;
rect.left = rc.left;
rect.right = rc.right;
dcMem.FillSolidRect(rect,RGB(186,207,220));
rect.top = 14+addh;
rect.bottom =rc.Height()-52;
rect.left = rc.left;
rect.right = 165;
dcMem.FillSolidRect(rect,RGB(32,110,158));
rect.top = 14+addh;
rect.bottom =rc.Height()-52;
rect.left = 165;
rect.right = rc.right;
dcMem.FillSolidRect(rect,RGB(255,255,255));
dc.BitBlt(0,0,rc.Width(),rc.Height(),&dcMem,0,0,SRCCOPY);
dcMem.SelectObject(pOldBit);
}
{
CPaintDC dc(this); // device context for painting
CRect rc,rect;
CDC dcMem;
GetClientRect(&rc);
CBitmap bmp, *pOldBit; //内存中承载临时图象的位图
bmp.CreateCompatibleBitmap(&dc,rc.Width(),rc.Height());
dcMem.CreateCompatibleDC(&dc);
pOldBit = dcMem.SelectObject(&bmp);
CPropertyPage* pg=this->GetPage(m_btnDown-IDC_D_BTN);
pg->MoveWindow(35+addw,14+addh,rc.Width()-addw-15,rc.Height()-addh-65);
rect.top = rc.top;
rect.bottom = 14+addh;
rect.left = rc.left;
rect.right = rc.right;
dcMem.FillSolidRect(rc,RGB(9,81,129));
rect.top =rc.Height()-52;
rect.bottom = rc.bottom;
rect.left = rc.left;
rect.right = rc.right;
dcMem.FillSolidRect(rect,RGB(186,207,220));
rect.top = 14+addh;
rect.bottom =rc.Height()-52;
rect.left = rc.left;
rect.right = 165;
dcMem.FillSolidRect(rect,RGB(32,110,158));
rect.top = 14+addh;
rect.bottom =rc.Height()-52;
rect.left = 165;
rect.right = rc.right;
dcMem.FillSolidRect(rect,RGB(255,255,255));
dc.BitBlt(0,0,rc.Width(),rc.Height(),&dcMem,0,0,SRCCOPY);
dcMem.SelectObject(pOldBit);
}
相关文章推荐
- ViewPager使用及加入动画
- iOS项目目录结构
- 数论基础
- PHP获取POST方式的XML数据
- random模块
- 【LeetCode】309. Best Time to Buy and Sell Stock with Cooldown
- Codeforces Round #340 (Div. 2)E. XOR and Favorite Number 莫队算法
- Linux驱动开发学习的一些必要步骤
- eclipse 远程文件实时同步,eclipse远程部署插件
- 页面传值
- Leangoo:用敏捷开发管理思维做团队协作的SaaS软件
- linux批量删除多级目录下同一格式的文件
- maven 多套环境 配置(开发、测试、预发、正式)
- IMP-00003: ORACLE error 3113 encountered ORA-03113: end-of-file on communication channel
- 数字密码发生器
- Nginx配置文件详细说明
- poj1703--Find them, Catch them(并查集应用)
- WHU1124 Football Match
- 软件工程概论初学
- 老李分享:JVM调优