Ir para conteúdo
Faça parte da equipe! (2024) ×
Conheça nossa Beta Zone! Novas áreas a caminho! ×
  • Quem está por aqui   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.

[AJUDA] No Delphi


Cloverfield
 Compartilhar

Posts Recomendados

Acabei de fazer esse código =) ele avança um dia ok

É necessário se cadastrar para acessar o conteúdo.

Esse código armazena a data atual no SD1 e após editar o dia coloca a nova data no SD2, se não houver mudança ele muda o dia para 1 e avança um mês, faz a mesma coisa quando chega no dia 31/12 e avança um ano. Apanhei no de voltar porque eu não consegui pegar o valor máximo de dias de cada mês, se você conseguir basta mudar as partes +1 para -1, o Month de 1 para 12 e por aí vai :cool:

Link para o comentário
Compartilhar em outros sites

No botão de avançar 1 dia use:

 

É necessário se cadastrar para acessar o conteúdo.

 

No botão de voltar 1 dia use:

 

É necessário se cadastrar para acessar o conteúdo.

Link para o comentário
Compartilhar em outros sites

Avançar 1 dia

 

Procedure TForm1.Button1Click(Sender: TObject);

var

Date : TDateTime;

ST : TSystemTime;

SD1, SD2 : String;

begin

Date := Now;

SD1:=DateToStr(Date);

GetSystemTime(ST);

ST.wDay:=ST.wDay+1;

SetSystemTime(ST);

Date := Now;

SD2:=DateToStr(Date);

if SD1=SD2 then

begin

GetSystemTime(ST);

ST.wDay:=1;

ST.wMonth:=ST.wMonth+1;

SetSystemTime(ST);

Date := Now;

SD2:=DateToStr(Date);

if SD1=SD2 then

begin

GetSystemTime(ST);

ST.wDay:=1;

ST.wMonth:=1;

ST.wYear:=ST.wYear+1;

SetSystemTime(ST);

end;

end;

end;

 

Voltar 1 dia

 

Procedure TForm1.Button1Click(Sender: TObject);

var

Date : TDateTime;

ST : TSystemTime;

SD1, SD2 : String;

begin

Date := Now;

SD1:=DateToStr(Date);

GetSystemTime(ST);

ST.wDay:=ST.wDay-1;

SetSystemTime(ST);

Date := Now;

SD2:=DateToStr(Date);

if SD1=SD2 then

begin

GetSystemTime(ST);

ST.wDay:=1;

ST.wMonth:=ST.wMonth-1;

SetSystemTime(ST);

Date := Now;

SD2:=DateToStr(Date);

if SD1=SD2 then

begin

GetSystemTime(ST);

ST.wDay:=1;

ST.wMonth:=1;

ST.wYear:=ST.wYear-1;

SetSystemTime(ST);

end;

end;

end;

Link para o comentário
Compartilhar em outros sites

@Cloverfield

Eu testei .____."

Dá uma olhada:

É necessário se cadastrar para acessar o conteúdo.
Foi feito do jeito que eu postei =)

 

Voltar 1 dia

Procedure TForm1.Button1Click(Sender: TObject);

var

Date : TDateTime;

ST : TSystemTime;

SD1, SD2 : String;

begin

Date := Now;

SD1:=DateToStr(Date);

GetSystemTime(ST);

ST.wDay:=ST.wDay-1;

SetSystemTime(ST);

Date := Now;

SD2:=DateToStr(Date);

if SD1=SD2 then

begin

GetSystemTime(ST);

ST.wDay:=1;

ST.wMonth:=ST.wMonth-1;

SetSystemTime(ST);

Date := Now;

SD2:=DateToStr(Date);

if SD1=SD2 then

begin

GetSystemTime(ST);

ST.wDay:=1;

ST.wMonth:=12; //Aqui é 12 não 1

ST.wYear:=ST.wYear-1;

SetSystemTime(ST);

end;

end;

end;

 

O problema que eu disse tá ai em vermelho, porque assim ele coloca o dia como 1 sendo que deveria ser o último do mês, e se você coloca 31 e o mês só tiver 30 dias não dá certo =|

Link para o comentário
Compartilhar em outros sites

Este tópico está impedido de receber novos posts.
 Compartilhar

×
×
  • Criar Novo...

Informação Importante

Nós fazemos uso de cookies no seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies , caso contrário, vamos supor que você está bem para continuar.