1.加载背景图,刷新时闪屏:

用双缓存:

CDC *pDC=GetDC();
  CDC memDC;
  memDC.CreateCompatibleDC(pDC);
  
  CBitmap bitmap;
  //创建与屏幕一样大小的位图
  bitmap.CreateCompatibleBitmap(pDC,  nClientWidth,  nClientHeight);
  CBitmap* pOldBitmap = memDC.SelectObject(&bitmap);
  CBrush* pBrush = new CBrush(RGB(250,235,215));//古董白
  CRect rect(0,0,nClientWidth,nClientHeight);
  memDC.FillRect(rect, pBrush);
  delete pBrush;

Draw(&memDC);//需要绘画的内容

pDC->BitBlt(0, 0, nClientWidth,  nClientHeight,  &memDC,  0,  0,  SRCCOPY); //画图
  memDC.SelectObject(pOldBitmap);
  bitmap.DeleteObject();

Ontimer刷新时,invalidate(false)即可,不会闪屏;

2.多层图叠加前一层被覆盖的处理办法:

同样需要用双缓存,先在内存画在输出到屏幕,如果是多层图叠加,就多次双缓存,需要在BitBlt()函数或StretchBlt()函数设置其最后一个参数(SRCPAINT/SRCINVERT/SRCAND  /SRCCOPY)为SRCAND进行透明化处理,如果第一层用SRCCOPY,而第二层也用SRCCOPY则会将第一层覆盖,因此第二层应设置为SRCAND来透明解决多层图叠加;

3.刷新图层,控件闪烁的解决办法:

屏幕上输出的图层上面有生成的控件,如按钮,这样刷屏时控件会闪动,解决办法是在OnInitDialog()上设置ModifyStyle(NULL,WS_CLIPCHILDREN|WS_CLIPSIBLINGS); 这样控件就不会闪动。

vc关于dialog绘图闪屏和多层覆盖的处理方法相关推荐

  1. Android 8.0接收通知后会手机崩溃,闪屏,恢复出厂设置的解决方法

    最近用极光推送,发现有新的SDK,就试试用.我的手机是Nexus 6P,原生8.0,结果一更新,手机就不断闪屏,系统崩溃,说要恢复出厂设置了 幸亏重启前截停了.然后求助极光推送,可得到的答复不是SDK ...

  2. Android 闪屏页的实现

    文章目录 前言 一.闪屏页的实现方式的思考 二.闪屏实现 1.设置闪屏Activity为app首页 2.闪屏Activity的theme 3.闪屏Activity的内部实现 总结 前言 闪屏页作为ap ...

  3. 主流智能手机屏幕材质介绍 及 LCD闪屏现象分析

    TN             TN(Twisted Nematic) 即扭曲向列型面板,属于有源矩阵液晶显示器中的一种.由于TFT是主动式矩阵LCD可让液晶的排列方式具有记忆性,不会在电流消失后马上恢 ...

  4. iPad闪屏跳动怎么回事?怎么解决?

    最近,很多用户在苹果论坛反馈iPad在使用一段时间后,突然闪屏然后重启或闪屏后黑屏无法启动. 这是怎么回事呢?造成iPad屏幕闪烁的原因有许多,例如系统Bug.软件错误.设备进水导致触屏失灵.排线或主 ...

  5. win10停止更新_编辑告诉你win10闪屏的具体步骤

    我们在用win10系统遇到win10闪屏的情况的时候,你会怎么处理呢?win10闪屏这样的不常见的问题,还真把一些大神给弄懵了.我们这次可以尝试着自己来解决win10闪屏的问题,这样我们的电脑相关知识 ...

  6. LCD液晶屏出现闪屏的原因及解决方法

    随着LCD液晶屏在车载产品,仪器仪表及其它电子产品的广泛应用,在使用过程中总是会出现闪屏的情况,从而影响到顾客的使用,那么这个时候该怎么办?下面由深圳兴宇合技术人员与大家分享一下LCD液晶屏闪屏的原因 ...

  7. 计算机设备管理器老是闪烁,电脑经常闪屏的原因和解决方法

    电脑发生闪屏的情况,会严重的影响到我们使用电脑.那么电脑经常闪屏是什么原因?电脑经常闪屏怎么办?下面跟通用pe工具箱小编一起来看看. 电脑经常闪屏的原因分析和解决方法一: 1.桌面单击右键->属 ...

  8. 计算机桌面闪烁,电脑显示器闪屏(电脑屏幕闪烁的解决方法)

    电脑显示器闪屏(电脑屏幕闪烁的解决方法)电脑屏幕闪烁,相信大家在使用电脑的过程中都有遇到过这个问题,但会解决这个问题的人却没有多少,大部分人在遇到这个问题时,不是请求电脑高手的帮助,就是花钱到电脑店请 ...

  9. 格莱富笔记本电脑教你笔记本电脑闪屏的解决方法

    显示器抖动除了受磁场或电场干扰外,遇到最多的就是显示器老化故障,解决办法只有拿去专业维修点维修了.一般新显示器可以拿去保修或更换,新显示器由于硬件问题导致的一般很少见.下面是GREFU/格莱富收集整理 ...

最新文章

  1. VTK:可视化之LineWidth
  2. K 个一组翻转链表Python解法
  3. 正则表达式部分总结(待续...........)如有错误,望各位高人指教
  4. border属性 php,如何通过CSS的border属性为图片设置边框效果
  5. 【Elasticsearch】Limit of total fields [1000] in index [xxxxxx_index] has been exceeded
  6. java deque.pop_Java - dequeue的介紹及用法
  7. “乘风破浪”的中国SaaS :风浪越大,机会越大?
  8. 游戏控制管理器(a11s)
  9. python插值算法_python插值算法
  10. NX二次开发(C#)-UIStyler-ListBox(列表框)的应用
  11. Android opengles 动态调节高斯模糊
  12. 如何将刷题的效率提升10倍
  13. 信息安全-防火墙技术原理与应用
  14. Hibernate常见问题 No row with the given identifier exists问题的原因及解决
  15. 时间轮算法概念;netty时间轮使用
  16. 博思得打印机如何打印序列号标签
  17. Java的GUI编程---贪吃蛇游戏实现
  18. 鸿蒙系统上市时间p20pro,华为P20/20 Pro今日正式发布:外观配置详细汇总
  19. SAP Commerce Cloud UI(Spartacus Storefront) 的用户会话管理
  20. [4G5G专题-75]:流程 - 4G LTE无线接入网中运营商标识、基站标识、终端标识大全

热门文章

  1. Linux用户态协议栈好处,关于用户态协议栈的思考
  2. java 线程不运行时间_java如何设置线程运行时间吗
  3. IIS状态代码的含义
  4. Atcoder Educational DP Contest 题解
  5. 图片识别文字, OCR
  6. BZOJ3832 [Poi2014]Rally 【拓扑序 + 堆】
  7. Transient关键字的使用
  8. Linux下查看进程和线程
  9. Nginx之让用户通过用户名密码认证访问web站点
  10. JAVA:this的使用