![]() |
Zeit addieren ?
Wie kann ich zu einer Zeitvariable x (hh.mm.ss) 10 Sekunden dazu addieren?
|
Re: Zeit addieren ?
Schau mal in der Unit DateUtils nach.
[edit] "U" vergessen :oops: [/edit] |
Re: Zeit addieren ?
Zitat:
|
Re: Zeit addieren ?
Ist ein String.
|
Re: Zeit addieren ?
Delphi-Quellcode:
Habs nicht getestet, köntne aber gehen :D
Zeit := Copy(Zeit, 0, 6) + IntToStr(StrToInt(Copy(Zeit, 6, 8)+10));
|
Re: Zeit addieren ?
dann in ein Format umwandeln, mit welchem man rechnen kann,
dann die Sekunden dazurechnen und alles wieder in den String zurück schau mal in die OH, was sie alles zu StrTo... bzw. StringTo... dir bietet und dann gibt es ja die Umkehrfunktionen ala ...ToStr [add] @Vasco da Gama ist möglich, aber was machst du, wenn die Sekunden vorher bei 55 standen? 65 ist ja wohl falsch, also dann eventuell noch die Minuten ändern (dem Überlauf entsprechend) und falls die Minuten auch schon auf 59 standen, dann das Selbe nochmal mit den Stunden :angel2: |
Re: Zeit addieren ?
@Vasco da Gama: :shock:
nice ... erinnert mich n bissel an "zahl negieren" Zwar auch nicht viel mehr Schritte als es mit StringToTime und TimeToString hin und her zu wandeln. (dazwischen natürlich noch 10 / 86400 dazurechnen ^^). Aber (me) doch n bissel verwirrend. :mrgreen: |
Re: Zeit addieren ?
Zitat:
|
Re: Zeit addieren ?
Also ich bin jetzt eher darauf aus, dass ich nicht 10 sek dazu zähle, sondern einfach die alte und die neue zeit (neue variable, in die ich nach bedinungserfüllung neue zeit schreibe) subtrahiere mit secondsbetween o.ä. und dann schaue ob es 10 sek sind.
allerdings ist dann ja y am anfang leer und wenn ich dann subtrahiere, dann steht da " '' ist keine gültige Uhrzeit" |
Re: Zeit addieren ?
Zitat:
|
Re: Zeit addieren ?
Wie ermittelst Du denn die neue Zeit? Ist das wieder ein String? Wenn ja, wieso?
|
Re: Zeit addieren ?
Nachdem ich die relevanten Daten übernommen habe, mache ich
Delphi-Quellcode:
In WL.Strings[1] steht die alte Zeit. Wenn neue Zeit kommt, soll geschaut werden , ob die uhrzeiten 10 sek auseinander liegen, wenn nein : auf neue uhrzeit warten
time := WL.Strings[1];
wenn ja : Daten wieder übernehmen. Beide variablen sind strings (Die umwandlung ist ja nicht das problem) |
Re: Zeit addieren ?
Zitat:
|
Re: Zeit addieren ?
Was soll das ewige StrTo.. toStr..
Hat das was mit meiner Frage zu tun. |
Re: Zeit addieren ?
Ja!
mit StrToInt kannst du strings in Integer umwandeln, wenn du da mal in die Hilfe schaust, dann gibts das für sehr viele Typen. |
Re: Zeit addieren ?
Zitat:
Allerdings würde ich nicht Integer sondern Date(Time)/Float verwenden. Dann kannste einfach direkt vergleichen
Delphi-Quellcode:
Oder die Zeit zerlegen (Decode-Time, -Date, ...) et cetera, et cetera
abs(zahl1-zahl2)
EDIT: Als ob wir jemals OT werden würden... tztztz :roll: |
Re: Zeit addieren ?
Meine Frage war wie ich da 10 sek hinzu addieren kann,nicht wie ich Typen umwandle. Das bekomme ich wohl noch hin. Danke
|
Re: Zeit addieren ?
Wenn du die Typen umwandelst(den String in TTime) dann kannst du mit + relativ einfach arbeiten...
|
Re: Zeit addieren ?
Zitat:
schaue Dir doch einfach an wie ein TDateTime aufgebaut ist. Dann weisst Du auch wie Du eine beliebige Zeitspanne addieren kannst. Oder verwende die Methoden aus den DateUtils. |
Re: Zeit addieren ?
Ist doch alles schon passiert. Hab es hinbekommen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:09 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz