Temporizador de contagem regressiva em C#

Muhammad Maisam Abbas 16 fevereiro 2024
Temporizador de contagem regressiva em C#

Este tutorial discutirá os métodos para criar um cronômetro de contagem regressiva em C#.

Cronômetro de contagem regressiva com a classe cronômetro em C#

A classe Timer) é usada para executar uma função dentro de um thread separado em C#. Podemos usar a função Timer para criar um cronômetro de contagem regressiva em C#. A propriedade Timer.Interval define o intervalo entre cada tick do cronômetro em milissegundos. A propriedade Timer.Tick executa uma tarefa específica em cada tick. Podemos diminuir o tempo total e exibi-lo ao usuário a cada tick até que o tempo total seja zero. O exemplo de código a seguir nos mostra como criar um cronômetro de contagem regressiva com a classe Timer em C#.

using System;
using System.Windows.Forms;

namespace countdown_timer {
  public partial class Form1 : Form {
    public Form1() {
      InitializeComponent();
    }
    private int duration = 60;
    private void button1_Click(object sender, EventArgs e) {
      timer1 = new System.Windows.Forms.Timer();
      timer1.Tick += new EventHandler(count_down);
      timer1.Interval = 1000;
      timer1.Start();
    }
    private void count_down(object sender, EventArgs e) {
      if (duration == 0) {
        timer1.Stop();

      } else if (duration > 0) {
        duration--;
        label1.Text = duration.ToString();
      }
    }
  }
}

Resultado:

Cronômetro de contagem regressiva C#

Criamos um cronômetro de contagem regressiva no código acima que conta de 60 a 0 segundos com a classe Timer em C#. Definimos Timer.Interval para ser igual a 1000 milissegundos igual a um segundo e diminuímos o valor exibido para o usuário a cada tique até que o valor seja igual a 0. Iniciamos o cronômetro com a função Timer.Start(), e no final, quando a duração é igual a 0, interrompemos o cronômetro com a função Timer.Stop() em C#.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artigo relacionado - Csharp Timer