C# ProgressBar用法:模拟进度条
来源:互联网 发布:注音输入法 简体 mac 编辑:程序博客网 时间:2024/06/05 04:30
在不考虑复杂情况下,我们可以采用不安全的线程调用,即允许子线程操作主线程里的控件状态,在初始化的时候后,加上这么一句:
Control.CheckForIllegalCrossThreadCalls = false;
//线程的不安全调用,允许线程直接调用主线程控件
就OK了。=======================================================
如果采用安全的线程调用,则可以采用委托 invoke 方法。
//模拟进度条
private void Send()
{
int i = 0;
while (i <= 100)
{
//显示进度信息
this.ShowPro(i);
i++; //模拟发送多少
Thread.Sleep(100);
}
Thread.CurrentThread.Abort();
}
private delegate void ProgressBarShow(int i);
private void ShowPro(int value)
{
if (this.InvokeRequired)
{
this.Invoke(new ProgressBarShow(ShowPro), value);
}
else
{
this.progressBar1.Value = value;
this.label1.Text = value + "% Processing...";
}
} private void Form1_Load(object sender, EventArgs e)
{
Thread thread = new Thread(new ThreadStart(Send)); //模拟进度条
thread.IsBackground = true;
thread.Start();
}
如果采用安全的线程调用,则可以采用委托 invoke 方法。
//模拟进度条
private void Send()
{
int i = 0;
while (i <= 100)
{
//显示进度信息
this.ShowPro(i);
i++; //模拟发送多少
Thread.Sleep(100);
}
Thread.CurrentThread.Abort();
}
private delegate void ProgressBarShow(int i);
private void ShowPro(int value)
{
if (this.InvokeRequired)
{
this.Invoke(new ProgressBarShow(ShowPro), value);
}
else
{
this.progressBar1.Value = value;
this.label1.Text = value + "% Processing...";
}
} private void Form1_Load(object sender, EventArgs e)
{
Thread thread = new Thread(new ThreadStart(Send)); //模拟进度条
thread.IsBackground = true;
thread.Start();
}
阅读全文
0 0
- C# ProgressBar用法:模拟进度条
- C#使用进度条,并用线程模拟真实数据 ProgressBar用法
- C# .Net WinForm 进度条ProgressBar 用法 实例
- C#中的进度条ProgressBar
- 进度条(ProgressBar)的功能与用法
- C# 进度条模拟
- C# 多线程使用progressBar进度条控件
- C# 多线程使用progressBar进度条控件
- 进度条ProgressBar
- 进度条progressBar
- ProgressBar进度条
- 进度条ProgressBar
- ProgressBar(进度条)
- ProgressBar(进度条)
- ProgressBar进度条
- progressbar(进度条)
- 进度条ProgressBar
- ProgressBar进度条
- HDU6070 二分 线段树
- opencv7-ROI
- 二分法
- Android 获取屏幕尺寸及代码设置控件大小
- Swift3:NSMutableAttributeString的Range和NSRange问题
- C# ProgressBar用法:模拟进度条
- C#读写txt文件
- Unity5.x 烘焙场景导出方法(更换lightmap曝光丢失问题)
- linux下删除软连接
- lapack
- vscode中vue标签按tab不显示
- uva 1368DNA Consensus String
- 多级指针的使用
- MAC 终端SSH公钥登录Linux