进度条的暂停和开始
2014-08-14 14:34
246 查看
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 ProcessBarForm
{
public partial class Form1 : Form
{
System.Windows.Forms.Timer TM = new System.Windows.Forms.Timer();
AutoResetEvent AutoRest = new AutoResetEvent(false);
public Form1()
{
InitializeComponent();
ProgressBar.CheckForIllegalCrossThreadCalls = false;
TM.Interval = 1;
TM.Tick+=new EventHandler(TM_Tick);
}
void TM_Tick(object sender, EventArgs e)
{
AutoRest.Set();
}
private void Form1_Load(object sender, EventArgs e)
{
progressBar1.Value = 0;
progressBar1.Maximum =1000;
}
private void button1_Click(object sender, EventArgs e)
{
TM.Start();
Thread ThreadProcess = new Thread(AA);
ThreadProcess.IsBackground = true;
ThreadProcess.Start();
}
void AA()
{
for (int i = 0; i < 1000; i++)
{
progressBar1.Value = i;
AutoRest.WaitOne();
}
}
private void button2_Click(object sender, EventArgs e)
{
TM.Stop();
}
private void button3_Click(object sender, EventArgs e)
{
TM.Start();
}
}
}
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 ProcessBarForm
{
public partial class Form1 : Form
{
System.Windows.Forms.Timer TM = new System.Windows.Forms.Timer();
AutoResetEvent AutoRest = new AutoResetEvent(false);
public Form1()
{
InitializeComponent();
ProgressBar.CheckForIllegalCrossThreadCalls = false;
TM.Interval = 1;
TM.Tick+=new EventHandler(TM_Tick);
}
void TM_Tick(object sender, EventArgs e)
{
AutoRest.Set();
}
private void Form1_Load(object sender, EventArgs e)
{
progressBar1.Value = 0;
progressBar1.Maximum =1000;
}
private void button1_Click(object sender, EventArgs e)
{
TM.Start();
Thread ThreadProcess = new Thread(AA);
ThreadProcess.IsBackground = true;
ThreadProcess.Start();
}
void AA()
{
for (int i = 0; i < 1000; i++)
{
progressBar1.Value = i;
AutoRest.WaitOne();
}
}
private void button2_Click(object sender, EventArgs e)
{
TM.Stop();
}
private void button3_Click(object sender, EventArgs e)
{
TM.Start();
}
}
}
相关文章推荐
- Handler和ProgressBar实现进度条的开始,暂停,停止,后退和循环
- 安卓学习笔记---实现简易播放器(带有进度条,开始与结束时间,暂停与播放)
- MFC 多线程拷贝文件开始暂停停止和进度条
- Android Handler和ProgressBar实现进度条的开始,暂停,停止,后退和循环
- Handler和ProgressBar实现进度条的开始,暂停,停止,后退和循环
- 开始—暂停。
- cocos2dx-3.0(26) CC_CALLBACK介绍及屏蔽Touch(暂停、开始)的方法
- android Thread 停止 开始 暂停
- 在spring中实现quartz2.2.1的动态调度(开始、暂停、停止等)
- NStimer 暂停与开始
- VideoView 开始暂停监听
- AVAudioPlayer 开始和暂停
- 使用Handler控制进度条,完成开始、暂停、继续、停止操作
- IOS 计时器暂停和开始 防止重复点击
- WPF控制动画开始、停止、暂停和恢复
- 原生JavaScript利用setInterval的一个简单开始暂停的定时器
- Android VideoView播放视频控制:开始、暂停、快进
- ios—跑马灯.开始暂停
- cocos2d-x中解决暂停并保存画面和开始的功能
- JavaScript实现轮播图,鼠标移入暂停播放,鼠标移除开始播放