Ir para o conteúdo
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

mekanis

Contas de datas

Mensagens Recomendadas

mekanis

Pessoal.

Como é que eu posso fazer contas com datas? (datetimepicker)

Penso que tenha que utilizar a função "today", tipo today - dtpicker.value

Mas na tou bem a ver como, podem ajudar?

Cumpz

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites
ribeiro55

Desde que os datatypes sejam ambos date ou datetime, podes operar em datas normalmente, originando TimeSpans no processo.

Os TimeSpans representam intervalos de tempo que podem ser consultados desde horas até ticks.

Exemplo:

Dim TS As TimeSpan = DateTime.Parse("01-01-2010 15:30") - DateTime.Parse("01-01-2010 15:00")
        MsgBox(TS.Minutes) 'Devolve 30

Podes também utilizar os métodos Add(unidade), como AddDays ou AddHours para adicionar ou subtrair tempo directamente para um datatype Date / DateTime

Exemplo:

MsgBox(DateTime.Parse("01-01-2010 15:30").AddHours(-1).ToString) 'Devolve 01-01-2010 14:30

Para consultares a data actual, usa Now. Today não serve para muitas operações pois não devolve a hora do sistema, só a data.

Exemplo:

        Dim TS As TimeSpan = Now - New Date(Now.Year, 1, 1)
        MsgBox(TS.Days & " dias desde o inicio deste ano.")

Exemplo de despiste para o Today (caso haja dúvida):

        Dim TS As TimeSpan = Now - New Date(Now.Year, 1, 1)
        MsgBox(TS.Hours & " horas desde o inicio deste dia.")
        'Devolve correctamente as horas

        Dim TS As TimeSpan = Today - New Date(Today.Year, 1, 1)
        MsgBox(TS.Hours & " horas desde o inicio deste dia.")
        'Devolve 0 (zero), independentemente da hora


Sérgio Ribeiro


"Great coders aren't born. They're compiled and released"
"Expert coders do not need a keyboard. They just throw magnets at the RAM chips"

Partilhar esta mensagem


Ligação para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!

Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.

Entrar Agora

×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.