DateTimePicker

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
Aphadias
Beiträge: 124
Registriert: Mi 28. Okt 2015, 18:28

DateTimePicker

Beitrag von Aphadias »

Moin,

ich habe ein Formular erstellt mit einer Eingabemaske. Dort ist u.a. ein DateTimePicker. Wenn ich dieses Formular schließen möchte und wieder öffne ist das Datum noch dar (logisch). Ich möchte gerne beim Schließen das eingestellte Datum verschwinden lassen. z.Z. mache ich es mit

Code: Alles auswählen

Form3.dfa.CleanupInstance;
Problem ist.... er geht auf die min. Einstellung -> sprich 01.01.1900

Primär startet der DateTimePicker mit NULL und ich möchte gerne dass der Wert auch wieder auf NULL zurück gesetzt wird. Gibt es da irgend wie eine Möglichkeit?

wp_xyz
Beiträge: 5152
Registriert: Fr 8. Apr 2011, 09:01

Re: DateTimePicker

Beitrag von wp_xyz »

Die Anzeige des DateTimePicker wird auf NULL gesetzt durch Aufrufen von

Code: Alles auswählen

DateTimePicker.Date := NullDate; 

Aphadias
Beiträge: 124
Registriert: Mi 28. Okt 2015, 18:28

Re: DateTimePicker

Beitrag von Aphadias »

das muss man erst mal wissen... hatte das auch schon probiert nur das ich nur null reingeschrieben habe und er dann rumgemeckert hat

danke ich probiere es gleich mal aus :)

//EDIT: ne er setzt es dann auch wieder auf 01.01.1900 00:00 anstatt auf Null

wp_xyz
Beiträge: 5152
Registriert: Fr 8. Apr 2011, 09:01

Re: DateTimePicker

Beitrag von wp_xyz »

Mehr kann ich aus dem Stand nicht sagen. Du musst dir jetzt die Mühe machen, ein kleines Demoprogramm zusammenzuklicken, das den Fehler zeigt und das du hier hochlädst, damit wir uns das hier anschauen können (nur .lpr, lpi, pas und lfm-Dateien, keine ppu und auch keine exe, alles zusammen in ein zip gepackt). Dazu auch eine Anleitung, was wie in welcher Reihenfolge zu klicken bzw einzutippen ist, so dass der Fehler auftritt. Und auch: was du wann genau erwartest. Wir sind alle keine Hellseher.

Andromeda
Beiträge: 120
Registriert: So 4. Jan 2015, 20:18

Re: DateTimePicker

Beitrag von Andromeda »

Der DateTimePicker verwendet als Variable einen TDateTime-Wert. Wenn Du da 0 zuweist, entspricht das dem 1.1.1900 0Uhr0. Das ist sozusagen der Lazarus-Urknall und entspricht dem Wert Null. Wenn Du eine andere Zeit ausgeben willst, musst Du halt einen anderen Wert zuweisen. Wenn Du eine 1 zuweist, entspricht das dem 2.1.1900 OUhr0 usw.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6780
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: DateTimePicker

Beitrag von af0815 »

Code: Alles auswählen

uses
  Sysutils;
 
.....
begin 
  .....
  DateTimePicker.Date := now(); 
  ....
end;
 
Mit dem setzen auf now() das in Sysutils drinnen ist, behält der Datetimepicker das Datum, es kann aber nicht zurückverfolgt werden, was ursprünglich ausgewählt wurde.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

wp_xyz
Beiträge: 5152
Registriert: Fr 8. Apr 2011, 09:01

Re: DateTimePicker

Beitrag von wp_xyz »

Aphadias hat geschrieben:ne er setzt es dann auch wieder auf 01.01.1900 00:00 anstatt auf Null
Dann muss du irgendwo noch Code haben, in dem das Date des DateTimePickers auf 0 und nicht auf DateNull gesetzt wird, bzw. wird das Setzen auf DateNull nicht oder an der falsche Stelle aufgerufen.

Ich habe ein kleines Programm angefügt, das im Hauptformular einen Button für die Datumseingaben in einem 2. Formular hat. Durch das Setzen von DateTimePicker.Date auf DateNull wird das 2. Formular jedes Mal mit dem Wert "00.00.0000" im DateTimePicker geöffnet (was sich in "NULL" umwandelt, wenn der DateTimePicker den Fokus verliert).
Dateianhänge
DateTimePicker_NullDate.zip
(2.98 KiB) 77-mal heruntergeladen

Antworten