您好我有一个Windows应用程序(winform .net框架4)。该应用程序在Windows XP系统上闪烁很多。我添加了代码:
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000; // Turn on WS_EX_COMPOSITED
return cp;
}
}
当我添加上面的代码时,删除了闪烁。它在我的开发系统上运行良好, Windows 7 32位但是在 Windows XP 上,闪烁增加了,并且没有加载背景图像。
有没有什么方法可以在所有Windows操作系统中删除闪烁?
答案 0 :(得分:1)
您也可以尝试
SetStyle(ControlStyles.OptimizedDoubleBuffer | ControlStyles.AllPaintingInWmPaint, true);
答案 1 :(得分:1)
Here is some information about Double Buffering。这是一个默认关闭的内置功能。根据我的经验,它并不总是有帮助,但值得尝试。
要打开它,请打开设计器并选择表单并查看表单的“属性”。在类别'行为'你会发现DoubleBuffered属性。只需将其设置为true即可。