zoukankan      html  css  js  c++  java
  • Thread,Invoke

    代码

    ///////////////////////////////调用类



    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Threading;
    using System.Text;
    using System.Windows.Forms;

    namespace WinFormAddDataLoading
    {
    partial class Form2 : Form
    {
    public Form2()
    {
    InitializeComponent();
    }
    /// <summary>
    /// 设置显示信息
    /// </summary>
    /// <param name="message"></param>
    public void SetMessage(string message)
    {
    this.label1.Text = message; }
    /// <summary>
    /// 设置ProgressBar控件的最大值
    /// </summary>
    /// <param name="count"></param>
    public void SetMaxCount(int count)
    {
    this.progressBar1.Maximum = count; }
    /// <summary>
    /// 设置ProgressBar的value(进度)
    /// </summary>
    /// <param name="values"></param>
    public void SetValue(int values)
    {
    this.progressBar1.Value = values; }

    private void Form2_Load(object sender, EventArgs e)
    {
    ///设置样式
    this.progressBar1.Style = ProgressBarStyle.Continuous;
    }
    /// <summary>
    /// 关闭窗体
    /// </summary>
    public void Closed()
    {
    this.Close(); }
    }
    public class LoadingClass
    {
    private Thread thread = null;
    private Form2 f = null;
    public LoadingClass()
    {
    f
    = new Form2();
    thread
    = new Thread(new ThreadStart(delegate { f.ShowDialog(); }));
    }
    public void Show(string message, int max, int values)
    {
    f.Show();
    f.SetMaxCount(max);
    f.SetMessage(message);
    f.SetValue(values);
    f.Refresh();
    }
    public void ch()
    {
    f.Close();

    try
    {
    thread.Abort();
    }
    catch { }
    }
    }
    }




    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    using System.Threading;

    namespace WinFormAddDataLoading
    {
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }
    private LoadingClass f = null;
    private void button1_Click(object sender, EventArgs e)
    {
    f
    = new LoadingClass();
    for (int i = 0; i < 100; i++)
    {
    f.Show(
    "内容:" + i.ToString(), 100, i);
    //this.Invoke(new MethodInvoker(delegate { f.Show("内容:" + i.ToString(), 100, i); }));
    Thread.Sleep(10);
    }
    f.ch();
    //this.button1.Enabled = false;
    //Thread thread = new Thread(new ThreadStart(run));
    //thread.Start();
    }
    private void run()
    {

    for (int i = 0; i < 100; i++)
    {
    this.Invoke(new MethodInvoker(delegate { f.Show("内容:" + i.ToString(), 100, i); }));
    Thread.Sleep(
    10);
    }
    f.ch();
    // this.button1.Enabled = true;
    }
    }
    }
  • 相关阅读:
    第二次结对编程作业——毕设导师智能匹配
    第二次作业——结对项目之需求分析与原型设计(1.0)
    调研《构建之法》指导下的全国高校的历届软工实践作品、全国互联网+竞赛、物联网竞赛等各类全国性大学生信息化相关的竞赛平台的历届作品
    软件工程的实践项目课程的自我目标
    CMake
    软件工程实践总结
    软件产品案例分析(K米 APP)
    毕设导师智能匹配
    结对项目之需求分析与原型设计(导师选择)
    调研《构建之法》指导下的软工实践作品
  • 原文地址:https://www.cnblogs.com/server126/p/1911648.html
Copyright © 2011-2022 走看看