如果满足条件,如何仅在计时器的滴答上运行一次命令

时间:2016-05-09 20:44:02

标签: c# if-statement

我正在尝试使用Windows窗口计时器显示一个消息框,只有满足这些条件后才显示消息框,if (test != null && done == false)满足这些条件后,消息框将显示消息框天。然后,done的布尔值将设置为false,这假设阻止消息框再次运行。但是,消息框不断显示。这是我的代码..

public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        String test = null;
        bool done = false;
        private void Form1_Load(object sender, EventArgs e)
        {
            timer1.Enabled = true;
        }


        private void timer1_Tick(object sender, EventArgs e)
        {
            test = "Good to see you";
            if (test != null && done == false)
            {
                MessageBox.Show(test);

            }
            done = true;
        }
    }

基本上我只想显示消息框ONCE然后停止,我认为布尔值是最好的方法。还有其他方法吗?请怜悯我刚开始。

1 个答案:

答案 0 :(得分:2)

在显示MessageBox之前移动done=true;