当我在文本框上写错了并单击按钮时,弹出一个消息框,并且因为我有一个计时器而一直弹出。
所以我想制作一个if语句,如果显示消息框,则停止计时器,直到再次点击该按钮。
我试过用这个:
private void button1_Click(object sender, EventArgs e)
{
timer1.Start();
if (errormsg)
{
timer1.Stop();
}
data();
}
private void data()
{
//code
现在这里是我的timer1代码:
private void timer1_Tick(object sender, EventArgs e)
{
int value;
if (int.TryParse(textBox1.Text, out value))
{
if (value > 0)
{
timer1.Interval = value;
}
}
button1.PerformClick();
}
这是错误消息:
private void errormsg()
{
MessageBox.Show("Sorry, there was an error. Please, try again.");
}
我还会注意到我在我的//代码
上的else语句中使用了errormsg
//code
else
{
errormsg();
}
所以我的问题是:
如果我的文本框(//代码)上显示错误的值导致出现消息框,如何使计时器停止。然后,当文本框上显示正确的值,然后单击按钮,计时器将再次启动?
答案 0 :(得分:1)
在errormsg()函数中停止计时器。当您单击button1时,它会再次启动。
private void button1_Click(object sender, EventArgs e)
{
timer1.Start();
data();
}
private void errormsg()
{
timer1.stop();
MessageBox.Show("Sorry, there was an error. Please, try again.");
}