Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Zeiten addieren (https://www.delphipraxis.net/53963-zeiten-addieren.html)

marcelwhip 26. Sep 2005 14:49


Zeiten addieren
 
hi!

ich würde gerne wissen, wie mnan zu einer Uhrzeit etwas addieren kann!
ich soll ein parkautomaten schreiben, und wenn man 50 cent einwirft, soll in einem editfeld die aktuellezeit + 30 minuten stehen!

danke!

Kedariodakon 26. Sep 2005 14:54

Re: Zeiten addieren
 
Delphi-Referenz durchsuchenIncDay
Delphi-Referenz durchsuchenIncMonth
Delphi-Referenz durchsuchenIncYear

...

Bye

marabu 26. Sep 2005 15:00

Re: Zeiten addieren
 
Besser IncMinute() aus der Unit DateUtils (D7). Und wenn du diese Unit in deiner Version von Delphi nicht hast, dann einfach so:

Delphi-Quellcode:
const
  OneMinute = 1 / 24 / 60;
var
  dt: TDateTime;
begin
  dt := dt + OneMinute * 30;
end;
Grüße vom marabu

Matze 26. Sep 2005 15:00

Re: Zeiten addieren
 
Oder so:

Delphi-Quellcode:
var
  Zeit: TTime;
begin
  Zeit := now;
  Zeit := Zeit + StrToTime('00:30:00');

marcelwhip 26. Sep 2005 16:34

Re: Zeiten addieren
 
danke an alle!
schon komisch das ich besonders auf diese strtotime nicht selber drauf gekommen bin!
THX :dp:

Sharky 26. Sep 2005 16:36

Re: Zeiten addieren
 
Zitat:

Zitat von marcelwhip
... schon komisch das ich besonders auf diese strtotime nicht selber drauf gekommen bin!

Wobei ich genau diese Methode nicht verwenden würde. :-P

Chegga 26. Sep 2005 17:55

Re: Zeiten addieren
 
Hi,

@ Sharky:
Warum denn, wenn ich fragen darf? :wink:
Wegen dem "Umwandeln - Hick-Hack" ( :zwinker: ) von StrToTime
bzw. TimeToStr? :gruebel:
Oder wo liegt das Problem?

MfG Marc

Sharky 26. Sep 2005 18:19

Re: Zeiten addieren
 
Zitat:

Zitat von Chegga
...Warum denn, wenn ich fragen darf? :wink:

Nein, DU darfst nicht fragen :stupid:

Mich würde es beim lesen von Code iritieren wenn ich für eine Numerischeoperation (addition von Zahlen) auf einmal einen String sehen würde.

vlees91 26. Sep 2005 18:42

Re: Zeiten addieren
 
du darfst ;) /musst es ja nicht lesen

Arnulf 26. Sep 2005 20:04

Re: Zeiten addieren
 
naja - ich finds ok es ist besser lesbar als wenn man incmilliseconds oder sowas verwendet.
Ist doch gut zu lesen - eine digital uhr kann ja jeder lesen und man sieht auf den ersten blick was die zeile macht ... das ist wichtig denk ich.

Arnulf

Sharky 26. Sep 2005 20:46

Re: Zeiten addieren
 
Zitat:

Zitat von Arnulf
...und man sieht auf den ersten blick was die zeile macht ... das ist wichtig denk ich.

Klar, das ist geschmacks sache. Ich finde es so halt einfacher:
Delphi-Quellcode:
// Aufgebaut auf dem "Code" von marabu
function AddMinutes (const aDT : TDateTime; const aMinutes : integer = 1) : TDateTime;
const
  OneMinute = 1 / 24 / 60;
begin
  result := aDT + (OneMinute * aMinutes);
end;

procedure TForm1.btn_TestClick(Sender: TObject);
var
  ZeitPlus30 : TDateTime;
begin
  ZeitPlus30 := AddMinutes(now,30);
end;

Matze 26. Sep 2005 20:50

Re: Zeiten addieren
 
Zitat:

Zitat von Sharky
Klar, das ist geschmacks sache. Ich finde es so halt einfacher: [...]

Einfacher würde ich das nicht nennen. Ich würde auch eine Funktion schreiben, wenn man das öfters aufrufen muss. Kommt es nur einmal vor, bevorzuge ich meine Variante, da sie sehr kurz und, meiner Meinung nach, sehr übersichtlich ist. Sonst kann ich keine Nachteile erkennen. ;)

marabu 26. Sep 2005 20:56

Re: Zeiten addieren
 
Hallo Matthias,

dein StrToTime() funktioniert nicht auf jedem Rechner - der TimeSeparator unterliegt der Kontrolle des Anwenders.

Freundliche Grüße vom marabu

Matze 26. Sep 2005 20:58

Re: Zeiten addieren
 
Ah, danke Marabu, wieder was gelernt. Ich würde nun auch Sharkys Methode bevorzugen. :stupid:


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:03 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