winform 界面加载闪烁问题

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了winform 界面加载闪烁问题相关的知识,希望对你有一定的参考价值。

有A B C D三个自定义用户控件(相当于一个窗体里面有N个控件),根据用户选择动态加载到窗体X里面,在用户选择加载的时候由于控件过多出现控件绘制闪烁问题.求解决办法,双缓存没用!

参考技术A 这跟程序无关,Timer的机制是定时向程序发送一个更新窗口视图的消息。

可以让你电脑刷新率弄高一点,当然你的硬件要支持;,Timmer间隔长一点,在允许的范围内。

或者换种方法,不用tooltip.
参考技术B 私密我给你解决,你懂得...

Winform刷新时界面假死闪烁

1.界面假死

开启新的线程做一些计算操作,只有更新控件时才委托给Form线程更新界面。

2.Winform刷新时闪烁
一般的
this.SetStyle(ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer | ControlStyles.ResizeRedraw, true);
设置双缓冲、延时刷新

OCC时,机器人动作频繁刷新画面时,把form.Paint声明为public直接调用。
注:调用Refresh、Invalidate、Update都是在调用Paint事件前先清空在绘制,所以会有闪烁。
OCC更新TopoDS对象等不需要放在Form的线程中执行,因为更新的是AIS_InteractiveObject,并不是画面。

以上是关于winform 界面加载闪烁问题的主要内容,如果未能解决你的问题,请参考以下文章

Winform和WPF 界面 花屏 闪烁?

C# WinForm 当窗体控件图片过多时,切换界面的显示会发生闪烁,该怎么取消闪烁。(注:双缓冲开启了)

Winform解决界面重绘闪烁的问题

再发贴求助,winform WebBrowser加载js出错

在winform上添加用户控件过多时出现闪烁

Winform刷新时界面假死闪烁