MinuteSpan
-
Hallo
In Konstruktor des Forms
DateTimePicker->DateTime = Date();bis bald
akari
-
Hi,
dann müsste das mit dem MinuteSpan so gehen? :
TDateTime -> DateTime = MinuteSpan(x,y);falls ja, bekomm ich dennoch den Fehler:
"Aufruf der undef. Funktion 'MinuteSpan'"
danke
-
was passiert wenn du MinuteSpan markierst und F1 drückst?
-
hab ich schon geschaut:
folgendes:*Die Funktion MinuteSpan gibt die Anzahl der Minuten (einschließlich der Minutenbruchteile) zurück, die zwischen den beiden angegebenen TDateTime-Werten verstrichen sind.
Unit
DateUtils
Kategorie
Datum/Zeit
extern PACKAGE double __fastcall MinuteSpan(const System::TDateTime ANow, const System::TDateTime AThen);*
-
ok, na schonmal etwas
steht in deinem Quelltext irgendwo
#include <DateUtils.hpp>?
-
Hi,
ja, nun steht es drin

Hat nun auch schonmal "etwas" funktioniert...
ich kopier dir nun einfach mal das rein, was ich machen will.
Wie gesagt, ich habe einen Start und Stop button und zwei ListBoxen, in
welche die jeweilige Zeit reingeschrieben wird.
Wenn ich nun Stop drücke soll nicht nur die Zeit in die Listbox übertragen werden,
sondern auch die Zeit aus "Start-Listbox" ausgelesen und per MinuteSpan die Differenz der beiden Zeiten in eine neue (dritte) ListBox geschrieben werden.void __fastcall TBasis::Stop_ButtonClick(TObject *Sender) { TDateTime DateTime = Time(); AnsiString str = TimeToStr(DateTime); char* ch = new char[str.Length()+1]; strcpy(ch, str.c_str()); Stop_Liste -> AddItem(ch, Stop_Liste); // Schreibt es in die Stop_Liste delete [] ch; int l1=0; int l2=0; AnsiString las1; AnsiString las2; l1 = Start_Liste->Items->Count; l2 = Stop_Liste->Items->Count; las1 = Start_Liste->Items->Strings[l1-1]; las2 = Stop_Liste->Items->Strings[l2-1]; TDateTime -> DateTime = StrToTime(las1); TDateTime -> DateTime = StrToTime(las2); /*Hier komme ich nicht weiter -> wie kopiere ich die Differenz in ListBox3 */ TDateTime -> DateTime = MinuteSpan(las1, las2); ListBox3 -> AddItem(????, ListBox3);so sieht es bei mir aus... ok nun bitte nicht so laut lachen

bin halt noch ein Neuling
-
warum so umständlich?
Stop_Liste->Items->Add(TimeToStr(Time())); ... ListBox3 -> Items->Add(FloatToStr(MinuteSpan(las1, las2)));MinuteSpan liefert übrigends KEIN DateTime zurück
-
Hey,
hab es vorhin noch getestet.
da kommen werte raus, die ich nich versteh ..
z.b. 3 Sekunden = 0,374657346753 oder so
und bei 5 Sekunden = 0,6234234 ....
da stimmt doch was nicht
kannst mir sagen , warum bei ListBox3 dieser FloatToStr
nötig ist?Kann ich diesen Wert nicht in ein DateTime zurückgeben lassen?
gruß
-
ich zitiere dich mal selbst:
smiLLe schrieb:
hab ich schon geschaut:
folgendes:*Die Funktion MinuteSpan gibt die Anzahl der Minuten (einschließlich der Minutenbruchteile) zurück, die zwischen den beiden angegebenen TDateTime-Werten verstrichen sind.
Unit
DateUtils
Kategorie
Datum/Zeit
extern PACKAGE double __fastcall MinuteSpan(const System::TDateTime ANow, const System::TDateTime AThen);*
fällt dir was auf?
wenn du die Sekunden willst, nimm SecondsSpan oder SecondBetween
wenn du allerdings die Zeit zwischen zwei Werten im Zeitformat anzeigen willst, brauchst du nur folgendes tun:
ListBox3->Items->Add(TimeToStr(StrToTime(las1) - StrToTime(las2)));
-
Morgen,
danke

genau das was ich haben wollte !
bin eig. davon ausgegeangen, dass MinuteSpan die Werte als DateTime ausgibt.Aber las1-las2 is natürlich noch viel besser

also,
vielen Dank !