J'ai activé ma minuterie Windows et essayé de m'arrêter mais cela ne semble pas fonctionner, veuillez consulter mon code:

private void button1_Click(object sender, EventArgs e)
{
        timer1.Start();
}

private void timer1_Tick(object sender, EventArgs e)
{
        MessageBox.Show("Hello");
        timer1.Stop();
}

Il montre le message encore et encore et il ne s'arrête pas. Veuillez me donner quelques idées, je vous suis très reconnaissant de votre aide.

0
Hoang Viet 16 janv. 2017 à 11:34

2 réponses

Meilleure réponse

Vous devez arrêter le minuteur avant d'afficher la boîte de message. Sinon, ils peuvent s'empiler.

Il y a le System.Timers.Timer qui peut être configuré pour être un minuteur à un coup, mais l'approche générale pour les autres minuteries est:

Lorsque l'événement du minuteur se déclenche, arrêtez le minuteur, faites ce que vous voulez et redémarrez le minuteur si nécessaire.

2
Thorsten Dittmar 16 janv. 2017 à 09:32

À la ligne MessageBox.Show("Hello"); L'exécution s'arrêtera là en attendant que l'utilisateur appuie sur le bouton "OK", donc la ligne timer1.Stop(); ne sera pas atteint jusqu'à ce que l'utilisateur interagisse avec la boîte de message, et le minuteur continuera à fonctionner de cette façon.

0
Ali Ezzat Odeh 16 janv. 2017 à 08:42