Используя Таймер только однажды

Я хочу использовать таймер только однажды в 1 секунду после инициализации моей основной формы. Я думал, что следующее будет иметь окно сообщения, говорящее "Привет Мир" только однажды, но на самом деле новое окно сообщения говорит "Привет Мир" всех секунду.

Как же так? Я поместил t.Stop() в событии галочки. Кроме того, я должен расположить таймер так или иначе для предотвращения утечки памяти?

        Timer t = new Timer();
        t.Interval = 1000;                
        t.Tick += delegate(System.Object o, System.EventArgs e)
                        { MessageBox.Show("Hello World"); t.Stop(); };

        t.Start();   

Помогите и покажите, существует ли лучший способ сделать это?Спасибо.

8
задан Henk Holterman 15 May 2010 в 18:10
поделиться

2 ответа

Заменить MessageBox.Show ("Hello World"); t.Stop (); с t.Stop (); MessageBox.Show ("Hello World"); . Поскольку вы не нажимаете ОК вовремя, таймер уже снова сработал, и вы так и не достигли кода остановки.

9
ответ дан 5 December 2019 в 14:01
поделиться

Поместите t.Stop (); перед MessageBox.Show ("Привет, мир");

2
ответ дан 5 December 2019 в 14:01
поделиться
Другие вопросы по тегам:

Похожие вопросы: