Einzelnen Beitrag anzeigen

HiWieGehts

Registriert seit: 19. Aug 2005
101 Beiträge
 
Delphi 10.4 Sydney
 
#19

AW: Kalenderwoche ermitteln

  Alt 1. Jun 2013, 07:16
Hallo,

ich weiß nicht, ob es in Delphi 2009 DateUtils schon gab. Damit gibt es jedenfalls mehrere Möglichkeiten, wie die gestellt Aufgabe gelöst werden kann.
Hier ein Beispiel (ed.. sind TEdit und lbl.. TLabel):
Delphi-Quellcode:
uses ..., DateUtils;
procedure TForm1.Button1Click(Sender: TObject);
var dtJahr, dtWoche, dtDifferenz: Word;
   dt: TDateTime;
begin
  dt := EncodeDateWeek(StrToInt(edJahr.Text), StrToInt(edWoche.Text));
  dt := IncWeek(dt, StrToInt(edDifferenz.Text));
  DecodeDateWeek(dt, dtJahr, dtWoche, dtDifferenz);
  lblJahr.Caption := IntToStr(dtJahr);
  lblWoche.Caption := IntToStr(dtWoche);
end;
Und wenn jemand möglichst wenig Zeilen haben will, dann kann man das Ganze auch so schreiben, dass man(n/frau) beim Lesen denken muss:
Delphi-Quellcode:
uses ..., DateUtils;
procedure TForm1.Button1Click(Sender: TObject);
var dtJahr, dtWoche, dtDifferenz: Word;
   dt: TDateTime;
begin
  DecodeDateWeek(IncWeek(EncodeDateWeek(StrToInt(edJahr.Text), StrToInt(edWoche.Text)), StrToInt(edDifferenz.Text)), dtJahr, dtWoche, dtDifferenz);
  lblJahr.Caption := IntToStr(dtJahr);
  lblWoche.Caption := IntToStr(dtWoche);
end;
LG, HiWieGehts
  Mit Zitat antworten Zitat