![]() |
DateTimePicker OnChange wird nicht ausgelöst
Hi Leute habe nochmal eine Frage bezüglich des DateTimePickers,
und zwar habe ich ein OnChange Ereignis, welches ausgelöst wird, wenn ich die Daten im DateTimePicker per Klick ändere. Allerdings ändere ich die Daten auch per Button je um einen Tag nach Vorne oder nach Hinten und dabei wird das OnChange Ereignis nicht ausgelöst. |
AW: DateTimePicker OnChange wird nicht ausgelöst
Deine Frage dazu lautet also wie folgt?
|
AW: DateTimePicker OnChange wird nicht ausgelöst
Warum wird das OnChange nicht durch die Buttons ausgelöst? Im EditFeld wird das Datum durch meine Buttons geändert, aber das OnChange wird nicht ausgelöst.
|
AW: DateTimePicker OnChange wird nicht ausgelöst
Wenn du im DateTimePicker die Werte änderst, dann wird die Methode TDateTimePicker.CNNotify aufgerufen.
Hier drin wird je nach Windows-Message Datum und Uhrzeit gesetzt (TCommonCalendar.SetDate von der übergeordneten Klasse und TDateTimePicker.SetTime). Anschließend wird TDateTimePicker.Change aufgerufen. In dieser Methode wird dein Event-Handler angesprochen, insofern du einen angefügt hast. Wenn du bspw.
Delphi-Quellcode:
im Code schreibst, rufst du intern direkt SetDate auf und umgehst die Benachrichtigung durch den Event-Handler.
DateTimePicker1.Date := Date;
Du kannst dir Abhilfe schaffen, in dem du es folgendermaßen schreibst:
Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
begin DateTimePicker1.Date := Date; DateTimePicker1.OnChange(nil); end; |
AW: DateTimePicker OnChange wird nicht ausgelöst
Delphi-Quellcode:
So klappt es, wenn ich die andere Zeile mit rein nehme bleibt der DateTimePicker durchgehend beim aktuellen Datum.
procedure TForm2.Button1Click(Sender: TObject);
begin DateTimePicker1.OnChange(nil); end; Aber danke :-D |
AW: DateTimePicker OnChange wird nicht ausgelöst
Zitat:
Erwarte nicht, dass wir immer in unseren Codeschnipseln haargenau für dich passende Lösungen schreiben. Diese Transferleistung musst du schon selber erbringen. |
AW: DateTimePicker OnChange wird nicht ausgelöst
Es ist manchmal etwas seltsam, wann bei Delphi bei Änderungen mittels Code ein gewisses Ereignis ausgelöst wird.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:30 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-2025 by Thomas Breitkreuz