zoukankan      html  css  js  c++  java
  • C#:使用双缓冲让界面绘制图形时避免闪烁

    SetStyle(  
                         ControlStyles.OptimizedDoubleBuffer  
                         | ControlStyles.ResizeRedraw  
                         | ControlStyles.Selectable  
                         | ControlStyles.AllPaintingInWmPaint  
                         | ControlStyles.UserPaint  
                         | ControlStyles.SupportsTransparentBackColor,  
                         true);


    将这段代码加到用户控件的构造函数中即可生效。

    这段代码的主要功能是开启了双缓冲。

    平时我以为开双缓冲只需要设置ControlStyles.OptimizedDoubleBuffer为true而已。

    但是经过实践才发现,起关键作用的是OptimizedDoubleBuffer和AllPaintingInWmPaint两个。

    当这两个都为true的时候。闪烁几乎消失。效果非常好。

  • 相关阅读:
    HDU 2795
    HDU 1394
    HDU 1754
    HDU 1166
    SDOI 2006
    HDU 1423
    HDU 1561
    centos7.4 搭建zabbix-server 3.4.5
    vim 简单笔记
    jdk环境并配置环境变量
  • 原文地址:https://www.cnblogs.com/liyugang/p/1952393.html
Copyright © 2011-2022 走看看