小白,循环播放窗体出现假死,我也试过BeginInvoke,但是自身知识薄弱,急求帮忙解决一下
//Timer
private void Timer(double _time,bool Enabled)
{
timers.Interval = _time;//时间间隔
timers.Enabled = Enabled;//是否执行事件
timers.AutoReset = true;//一次Or多次(false/true)
timers.Elapsed += new System.Timers.ElapsedEventHandler(TimeHandle);//具体执行内容
}
//开始显示或结束显示
private void start_btn_Click(object sender, EventArgs e)
{
double _Time = Convert.ToInt32(textBox1.Text);
bool enabled;
if (start == false)
{
start = true;
enabled = true;
start_btn.BackColor = Color.Green;
Timer(_Time, enabled);
}
else
{
start = false;
enabled = false;
start_btn.BackColor = Color.Red;
timers.Enabled = enabled;
MessageBox.Show("已关闭");
}
}
//执行事件内容
private void TimeHandle(object sender, System.Timers.ElapsedEventArgs e)
{
open_Form(one_frm);
}
// 打开窗体
private void open_Form(Form objForm)
{
objForm.Show();
Thread.Sleep(5000);
objForm.Hide();
objForm.Close();
objForm.Dispose();
}