winform窗体闪烁问题解决方式

这篇具有很好参考价值的文章主要介绍了winform窗体闪烁问题解决方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

winform窗体闪烁问题解决方式

1、使用窗体双缓冲

SetStyle(ControlStyles.UserPaint | ControlStyles.AllPaintingInWmPaint | ControlStyles.OptimizedDoubleBuffer, true);
UpdateStyles();

窗体的DoubleBuffered 指示是否对控件进行双缓存处理。

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模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • C#winform 点叉叉按钮关闭一form窗体应用后,后台进程仍在运行的解决办法

    如果要解决“C#winform 点叉叉按钮关闭一form窗体应用后,后台进程仍在运行”的问题,可以直接点击目录跳转到3.4关闭窗体的多种方法。 前面为记录遇到该问题的一些过程。 之前用C#做了一个日志备份的窗体应用程序,最近把这个程序完善了一下,在窗体上显示了配置文件中

    2023年04月26日
    浏览(44)
  • 实例033 制作闪烁的窗体

      实例说明 Windows 系统中,当程序在后台运行时,如果某个窗口的提示信息需要用户浏览,该窗口就会不停的闪烁,这样就会吸引用户的注意。同样,如果在自己的程序中使某个窗口不停的闪烁就会吸引用户的注意。本例设计了一个闪烁的窗体,运行程序,单击【开始闪烁】

    2024年02月13日
    浏览(53)
  • 【WinForm】WinForm常见窗体技术汇总

    窗体调用外部程序与渐变窗体 按回车键跳转窗体中的光标焦点 剪切板操作 实现拖放操作 移动的窗体 抓不到的窗体 MDI窗体 提示关闭窗体 窗体正在变色: 窗体调用网络页面–启动浏览器: 窗体调用本地程序–启动记事本: 按下enter键,光标会向下移动: 第一个text中输入内

    2024年02月08日
    浏览(49)
  • winform窗体

    WinForm,是·Net开发平台中对Windows Form的一种称谓。WinForm是窗体应用程序,由若干个窗体应用组成,基于C/S架构 (1)基本控件: label 文本提示 TextBox 文本框 button      按钮 radiobutton 单选按钮 panel       面板(相当于小容器) check 复选框 combox        下拉列表框 listbox  列表

    2024年02月08日
    浏览(67)
  • 【C#】【WinForm】MDI窗体

    MDI窗体的相关学习使用 1、设置MDI父窗体  在属性中找到IsMdiContainer选项,设置为True 2、添加MDI子窗体,在项目中依次选择添加-窗体,然后一直默认即可  添加后的项目目录(Form1为父窗口,Form2、Form3为子窗口)  3、在Form1.cs中,创建对应MDI子窗口的对象并调用显示出来 保存

    2024年02月08日
    浏览(46)
  • Winform窗体使用IOC容器

    Winform窗体如何使用IOC容器呢?在nuget中添加Microsoft.Extensions.DependencyInjection 接着在Program类Main方法中添加一下代码 在此类中继续补充以下代码 以后你的注入只需要在 static void ConfigureServices(IServiceCollection services)这个方法中注入就行了 全景图:   我把窗体也注入了,不过不是

    2024年02月12日
    浏览(50)
  • C#Winform圆角无毛刺窗体实例

    本篇实例讲解窗体的圆角实现,对比了多种方法,最后一种实现了无毛刺的圆角窗体。 通过绘制圆角的路径,并创建对应的窗体Region区域实现,重新创建Region的所有方法,产生的Region都是有锯齿的,其效果一般,不能满足较高需求的项目。 目录 常规实现 方法一 常规实现  

    2024年02月11日
    浏览(128)
  • C# Winform无边框窗体实现界面拖动

    C# Winform无边框窗体实现界面拖动

    2024年02月07日
    浏览(45)
  • C# winform窗体全屏显示设置

    窗体全屏显示,并覆盖桌面任务栏。 全屏显示后,如果拖拽标题栏,会使窗体全屏失效(如果禁用了最大话按钮),为了解决这样的问题,需要设置“标题栏移动”属性:

    2024年02月16日
    浏览(60)
  • C#之基于winform窗体绘制简单图形

    什么是窗体? 可以理解为是一个自定义的控制台应用程序。 假如需要仅仅是用vs制作游戏的话,那么vs中,我们平时所用到的控制台应用程序所呈现的窗口时远远不够用的。因此需要自定义窗体。 因此在新建项目时,我们不能再使用控制台应用程序,而是应该选择窗体: 之

    2023年04月16日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包