zoukankan      html  css  js  c++  java
  • 委托刷新窗体

    不知不觉在博客园待了一年多了,我也从当年的大菜鸟变成了小菜鸟,希望自己能坚持写点东西,记录自己的点点滴滴,好了进入正题;

    不知道大家有没有遇到过这样的问题, 在UI界面,运行后台线程,后台线程中包含着控制窗体的某些控件的刷新,此时界面会在刷新时有些顿卡或屏幕在刷新一样,让人感觉很不爽

    曾经看过某个大神写的文章解决了这个问题,现在找发现找不到了,现在做个记录吧:

    public class UPDATEUI

    {

         delegate void UpPictureBoxHandler(Form _form, PictureBox _pictureBox, Image img);//更新图片控件的图片

         public static void UpPictureBox(Form _form, PictureBox _pictureBox, Image img)
         {
             if (!_form.InvokeRequired)
            {
                 try
                {
                  _pictureBox.BackgroundImage = img;
                }
                catch
               { }
            }
            else
           {
               _form.BeginInvoke(new UpPictureBoxHandler(UpPictureBox), new object[] { _form, _pictureBox, img });
           }
       }

         delegate void UpTextBoxHandler(Form _form, TextBox _textBox, string _text);//更新文本框控件的文字

         public static void UpTextBox(Form _form, TextBox _textBox, string _text)
         {
             if (!_form.InvokeRequired)
            {
                 try
                {
                  _textBox.Text = _text;
                }
                catch
               { }
            }
            else
           {
               _form.BeginInvoke(new UpTextBoxHandler(UpTextBox), new object[] { _form, _textBox, _text});
           }
       }

    }

  • 相关阅读:
    Python for Data Science
    Python for Data Science
    Python for Data Science
    团队项目选题报告(I know)
    结对第一次作业——原型设计
    团队展示(I know)
    软件工程实践第二次作业——个人项目实战(数独)
    软件工程实践第一次作业--准备篇
    Java微笔记(9)
    Java微笔记(8)
  • 原文地址:https://www.cnblogs.com/qiyecao/p/4006878.html
Copyright © 2011-2022 走看看