TimeDatePicker <edit>auf auktuelle Zeit einstellen</edit>
-
Ok danke,
bei mir funktioniert beides.Danke euch
-
bei mir funktioniert beides.
Oh mann.....

Es kann nicht beides funktionieren.
Für die Zeit funktioniert das mit Time(),CurrentTime(), aber das Datum wird dadurch verändert.

-
Was funktioniert denn nicht? Wenn man natürlich nur Datum oder Zeit anfordert... Geht aber auch beides gleichzeitig:
TDateTime dtTest = TDateTime::CurrentDateTime(); ShowMessage(dtTest.DateString()); ShowMessage(dtTest.TimeString()); ShowMessage(dtTest.DateTimeString());
-
@timer
Es wurde danach gefragt die aktuelle Zeit zu setzen und nicht das Datum. Da funktioniert auch CurrentTime welches ja ein TDateTime-Objekt liefert. Das Datum war für mich hier irrelevant. Wenn ich Datum und Zeit setzen will nehme ich halt Now oder CurrentDateTime.
Abgesehen davon würde ich innerhalb einer Applikation bei einem TDateTimePicker auch nie den Kind ändern. Das wäre für den Nutzer doch etwas verwirrend. Wenn man beides brauch kann man ja zwei einsetzen.
-
Abgesehen davon würde ich innerhalb einer Applikation bei einem TDateTimePicker auch nie den Kind ändern. Das wäre für den Nutzer doch etwas verwirrend. Wenn man beides brauch kann man ja zwei einsetzen.
Ich würde das schon machen, bzw habe das auch schon.

Wozu zwei ?
Brauchst doch nur den Benutzer "umschalten" lassen.
Absolut nicht verwirrend.
-
@Joe M.
Dann sieh dir mal das Datum an.
-
Ich hab das bei mir jetzt mal getestet mit dem Umschalten und CurrentTime().
Bei mir wird beim Setzen der Zeit mit
dtp1->Time = TDateTime::CurrentTime(); das Datum nicht verändert. Es bleibt also auf dem vorher eingestellten Wert (BCB6 Compilierung 2195 SP4).
-
Wie gesagt bei mir tut nun was ich haben will.
Das Datum ist bei mir Irrelevant, da ich dafür einen bzw zwei neue DateTimePicker habe.Nun stehe ich aber vor einem anderen Problem, das ich einfach mal hier dazu poste.
Ich versuche anhand von 2 auf Datum eingestellte DTP herauszubekommen wie viele Tage zwischen den 2 eingestellten Daten sind. Mein Problem sind die Monatssprünge, also ob ab dem 30 bzw 31 ein neuer Monat beginnt...
-
DaysBetween liefert dir die Zahl der Tage zwischen zwei TDateTime-Werten
-
Irgendwie versteh ich das nicht so ganz...
____________________________________________________
String datenow,datethen;
int dif= 0;
datenow= DateTimePicker2->Date;
datenow= datenow.SubString(0,10);datethen = DateTimePicker3->Date;
datethen= datethen.SubString(0,10);
DaysBetween(datenow,datethen),dif;ShowMessage(datenow);
ShowMessage(datethen);
ShowMessage(dif);______
Ich bekomme also meine 2 Daten durch 2 verschiedene DateTimePicker die ich auslese und in einen String schreibe. Die 2 Daten werden mir auch korrekt ausgegeben, jedoch rechnet er mir keine Differenz aus ... verstehe nicht so ganz welchen Syntax die DaysBetween erfordert *fg*
-
schonmal mit der BCB-Hilfe zu DaysBetween versucht?
-
Ja, aber die bringt mich nicht weiter

-
DaysBetween erst ab BCB 6.
-
BCB-Hilfe schrieb:
Die Funktion DaysBetween gibt die Anzahl ganzer Tage zwischen den beiden angegebenen TDateTime-Werten zurück.
Unit
DateUtilsKategorie
Datum/Zeitextern PACKAGE int __fastcall DaysBetween(const System::TDateTime ANow, const System::
TDateTime AThen);Beschreibung
Mit DaysBetween können Sie die Differenz zwischen zwei TDateTime-Werten in Tagen ermitteln.
DaysBetween zählt nur ganze Tage. Die Differenz zwischen dem 31.12.1999, 23:59 Uhr und dem 01.01.2000, 23:58 Uhr wird von der Funktion DaysBetween also als Null berechnet, da die Differenz um eine Minute kürzer als ein ganzer Tag ist.
ich hab mal die wichtigen Sachen fett und unterstrichen dargestellt...