winform窗体闪烁问题解决方式
1、使用窗体双缓冲
SetStyle(ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer, true);
UpdateStyles();
窗体的DoubleBuffered 指示是否对控件进行双缓存处理。文章来源:https://www.toymoban.com/news/detail-651266.html
2、使用CreateParams的使用解决闪屏问题文章来源地址https://www.toymoban.com/news/detail-651266.html
#region 解决添加背景图片时闪屏的问题
protected override CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
cp.ExStyle |= 0x02000000; // Turn on WS_EX_COMPOSITED
if (this.IsXpOr2003 == true)
{
cp.ExStyle |= 0x00080000; // Turn on WS_EX_LAYERED
this.Opacity = 1;
}
return cp;
}
}
/// <summary>
/// 防止闪烁
/// </summary>
private Boolean IsXpOr2003
{
get
{
OperatingSystem os = Environment.OSVersion;
Version vs = os.Version;
if (os.Platform == PlatformID.Win32NT)
if ((vs.Major == 5) && (vs.Minor != 0))
return true;
else
return false;
else
return false;
}
}
#endregion
到了这里,关于winform窗体闪烁问题解决方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!