none
Tempo no C# RRS feed

  • Pergunta

  • Pessoal, boa tarde!

    Estou com uma grande duvida, preciso criar no windows forms, uma janela que contem um tempo rodando numa Label, e mesmo rodando o tempo eu consiga utilizar o form, tentei fazer com o while, ele até roda, mas não consigo usar porque trava.

    Valeu galera!

    segunda-feira, 4 de junho de 2018 20:07

Respostas

  • ViniciusMs, boa tarde.

    Faça o seguinte:

    Coloque um componente Timer no seu Form.

    Defina a propriedade Interval para 1000 (1 segundo).

    Defina dois atributos para a tela também:

    private DateTime DataInicial;
    private TimeSpan CalcularData;

    Evento Click de algum botão, ou no seu FormLoad, você coloca esse código:

    DataInicial = DateTime.Now;
    timer1.Start();

    Evento Tick do Timer:

    private void timer1_Tick(object sender, EventArgs e)
            {
                CalcularData = (DateTime.Now).Subtract(DataInicial);
    
                label1.Text = String.Format("Horas: {0}, Minutos: {1}, Segundos: {2}",
                    CalcularData.Hours,
                    CalcularData.Minutes,
                    CalcularData.Seconds);
            }

    Qualquer dúvida, estou a disposição.

    att.

    Felipe

    segunda-feira, 4 de junho de 2018 20:19
  • Olá! 

    No evento Tick de um componente Timer, coloque este código:

    lblHorario.Text = $"{DateTime.Now:HH:MM:ss}";

    Troque lblHorario pelo nome de sua Label!

    Espero que lhe ajude!

    []´s


    Leandro Ferreira - LinkedIn

    segunda-feira, 4 de junho de 2018 20:27

Todas as Respostas

  • ViniciusMs, boa tarde.

    Faça o seguinte:

    Coloque um componente Timer no seu Form.

    Defina a propriedade Interval para 1000 (1 segundo).

    Defina dois atributos para a tela também:

    private DateTime DataInicial;
    private TimeSpan CalcularData;

    Evento Click de algum botão, ou no seu FormLoad, você coloca esse código:

    DataInicial = DateTime.Now;
    timer1.Start();

    Evento Tick do Timer:

    private void timer1_Tick(object sender, EventArgs e)
            {
                CalcularData = (DateTime.Now).Subtract(DataInicial);
    
                label1.Text = String.Format("Horas: {0}, Minutos: {1}, Segundos: {2}",
                    CalcularData.Hours,
                    CalcularData.Minutes,
                    CalcularData.Seconds);
            }

    Qualquer dúvida, estou a disposição.

    att.

    Felipe

    segunda-feira, 4 de junho de 2018 20:19
  • Olá! 

    No evento Tick de um componente Timer, coloque este código:

    lblHorario.Text = $"{DateTime.Now:HH:MM:ss}";

    Troque lblHorario pelo nome de sua Label!

    Espero que lhe ajude!

    []´s


    Leandro Ferreira - LinkedIn

    segunda-feira, 4 de junho de 2018 20:27
  • Valeu Mano, exatamente como precisava !
    segunda-feira, 4 de junho de 2018 23:12
  • Valeu Fera! o jeito que voce passou já um complemento no meu projeto!
    segunda-feira, 4 de junho de 2018 23:13