整个窗体界面是采用双缓冲绘制出来的,窗体上有很多按钮控件,按钮也是采用双缓冲绘制出来的,但是当其他窗口在上面移动是就会出现很明显的闪烁,请高手解决。

解决方案 »

  1.   

    有必要用双缓冲绘制按钮么?
    其实对于不是需要及时频繁绘制状态图的情况,设置启用双缓冲就可以了。涉及到GDI+时才会更多关注双缓冲。
      

  2.   

    这个像是由于刷新导致的,想点办法不让他刷新看看吧。我提供个思路,Control.SuspendLayout()和Control.ResumeLayout()之类的或许可以
      

  3.   


    也就有12个按钮,还有3个比较大的自定义控件,还有些pictureBox
    美工设计一个界面效果图,我要把图都画进去,大多数控件都是要填充图片的
      

  4.   

    这个是不可避免的。
    使用的GDI+多了,就是这样的。
    在想要更好的效果,只能是DirectX了。
      

  5.   

    尽可能不要在PAINT或ONPAINT里写.而是采用背景贴图的方式.
      

  6.   

    winform 就这德行了,
    默认窗口放个 DGV, 绑些数据,
    拖动 winamp 窗口, 在winform窗口上移动
    可明显看见后面的窗口闪乎乎的.winform 玩好不容易..
      

  7.   

    说的是,应该是我们没玩好WinForm吧!
    To LZ:
    别用图片按钮了,尤其是用背景,要么你就用BMP图,别用其它格式的,WinForm窗体中用图片背景就这德行!