Einzelnen Beitrag anzeigen

blackdrake

Registriert seit: 22. Aug 2003
Ort: Bammental
618 Beiträge
 
Delphi 10.3 Rio
 
#16

Re: Daten bei TMonthCalendar markieren

  Alt 14. Dez 2007, 20:08
Hallo.

Danke für den Tipp. Leider hab ich hier ein Problem mit der Umsetzung:

Delphi-Quellcode:
private
  OriginalCalendarWindowProc: TWndMethod;
  procedure CalendarWindowProcEx(var Message: TMessage);

procedure TForm1.CalendarWindowProcEx(var Message: TMessage);
begin
  if Message.Msg = CN_NOTIFY then
  begin
    memo1.lines.add('Message CN_NOTIFY ('+inttostr(message.Msg)+')');
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  OriginalCalendarWindowProc := MonthCalendar1.WindowProc;

  // EOSError: Ein Aufruf einer Betriebssystemfunktion ist fehlgeschlagen
  MonthCalendar1.WindowProc := CalendarWindowProcEx;
end;
Ich hab mir dieses CN_NOTIFY Modell von folgendem Tutorial abgeleitet: http://delphi.about.com/od/delphitip...iewchecked.htm

Im Delphi-Quelltext ist TMonthCalendar.WindowProc folgendermaßen deklariert:

Delphi-Quellcode:
property WindowProc: TWndMethod read FWindowProc write FWindowProc;

type
  TWndMethod = procedure(var Message: TMessage) of object;
Ich denke also, dass die Funktion CalendarWindowProcEx korrekt deklariert ist. Aber was soll der Fehler bedeuten?

Gruß
blackdrake
Daniel Marschall
  Mit Zitat antworten Zitat