Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#7

AW: TDateTimePicker: selektierten Bereich ermitteln/setzen

  Alt 1. Jun 2019, 20:00
Du könntest es vielleicht mit einer Interceptor Class erreichen, die das CN_NOTIFY abfängt:
Delphi-Quellcode:
type
  TDateTimePicker = class(Vcl.ComCtrls.TDateTimePicker)
  private
    procedure CNNotify(var Message: TWMNotifyDT); message CN_NOTIFY;
  end;

procedure TDateTimePicker.CNNotify(var Message: TWMNotifyDT);
var
  DT: TDateTime;
begin
  DT := DateTime;
  if (Message.NMHdr^.code = DTN_DATETIMECHANGE) and (Message.NMDateTimeChange^.dwFlags = GDT_VALID) then begin
    DT := SystemTimeToDateTime(Message.NMDateTimeChange^.st);
  end;
  inherited;
  DateTime := DT;
end;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat