Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi datum splitten - in stunden, minuten, sekunden (https://www.delphipraxis.net/70732-datum-splitten-stunden-minuten-sekunden.html)

danku 3. Jun 2006 17:15


datum splitten - in stunden, minuten, sekunden
 
über eine tscrollbar kann man die werte in eine tedit max/minimieren.
Delphi-Quellcode:
edZeit.Text := IntToStr(sbzeit.Position);
diese zahl dann in dem tedit entspricht den "puffer"-minuten.

in 3 weiteren tedits (hours,min,sec) wird die aktuelle zeit wiedergegebn und in abhängigkeit mit dem 1. editfeld werden die minuten durch puffer-minuten dazugerechnet.

versuchte das mit den funktionen hourof, minuteof und secondof aber es gibt keine regung.
Delphi-Quellcode:
edende.text:=timetostr(HourOf(now));
edende2.text := timetostr(MinuteOf(now));
edende3.text:=timetostr(SecondOf(Now));
wieso steht in allen 3edits '00'?

Luckie 3. Jun 2006 17:18

Re: datum splitten - in stunden, minuten, sekunden
 
Geht:
Delphi-Quellcode:
uses
  DateUtils;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(IntToStr(HourOf(now)));
end;
HourOf gibt einen Integer zurück und keinen Wert vom Typ TTime. Die Hilfe ist schon manchmal recht lehrreich. ;)

Klaus01 3. Jun 2006 17:19

Re: datum splitten - in stunden, minuten, sekunden
 
Da hourof ein Word zurückliefert würde
ich die Funktion function WordToStr(const Value: Word): WordStr;
veruchen um daraus eine String zu bekommen.

[edit] wenn man keine Indy Komponenten hat, kann man den Vorschlag vergessen [/edit]

Grüße
Klaus

danku 3. Jun 2006 17:21

Re: datum splitten - in stunden, minuten, sekunden
 
das ist ja blöd.
dachte da muss timetostr hin weil es ja ein time-wert ist.
IntToStr :drunken:

marabu 3. Jun 2006 17:23

Re: datum splitten - in stunden, minuten, sekunden
 
Hallo Daniel,

die Funktion TimeToStr() erwartet einen TDateTime-Wert als Argument und liefert die String-Repräsentation des gebrochenen Anteils. Der Ganzzahlige Anteil sind die Tage seit dem Referenzdatum. In deinem Code bildest du mit der Funktion HourOf() den Stundenanteil der aktuellen Zeit - eine Ganzzahl. Der gebrochene Anteil ist dann 0.

Delphi-Quellcode:
edEnde.Text := Format('%.2d', [HourOf(Now)]);
// ...
Grüße vom marabu

danku 3. Jun 2006 17:53

Re: datum splitten - in stunden, minuten, sekunden
 
Zitat:

Zitat von Klaus01
Da hourof ein Word zurückliefert würde
ich die Funktion function WordToStr(const Value: Word): WordStr;
veruchen um daraus eine String zu bekommen.

[edit] wenn man keine Indy Komponenten hat, kann man den Vorschlag vergessen [/edit]

Grüße
Klaus

was bitte hat das damit zutun?

Klaus01 3. Jun 2006 18:02

Re: datum splitten - in stunden, minuten, sekunden
 
weil man für WordToStr diese Unit benötigt: IdTrivialFTPBase

Grüße
Klaus

r_kerber 3. Jun 2006 18:06

Re: datum splitten - in stunden, minuten, sekunden
 
Such mal in der OH nach Delphi-Referenz durchsuchenDecodeDate und Delphi-Referenz durchsuchenDecodeTime

danku 3. Jun 2006 18:13

Re: datum splitten - in stunden, minuten, sekunden
 
kenn ich. hours of etc. gefällt mir aber stylistisch besser.


Alle Zeitangaben in WEZ +1. Es ist jetzt 22:28 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz