Thema: Delphi Message abfangen

Einzelnen Beitrag anzeigen

Benutzerbild von Jens Schumann
Jens Schumann

Registriert seit: 27. Apr 2003
Ort: Bad Honnef
1.644 Beiträge
 
Delphi 2009 Professional
 
#5

Re: Message abfangen

  Alt 1. Nov 2004, 15:10
Zitat von Mystic:
... Subclassing ( TForm = class(Forms.TForm) ) gemacht. Allerdings war das mit etwas zu unsauber.
Das ist kein SubClassing, sondern eher die klassische Vererbung.

SubClassing verwende ich in meinem Beispiel. SubClassing bedeutet das man Botschaften, die für ein fremdes Fenster bestimmt sind abfängt und evt. verändert. Dadurch verändert sich auch das Verhalten des fremden Fensters. Das kann z.B. dadurch passieren, das man die registrierte Fensterprocedure austauscht. Das´geschieht in meinem Beispiel genau dort
Delphi-Quellcode:
procedure TJsMessageInterceptor .Loaded;
begin
  inherited Loaded;
  If (Owner<>Nil) and (Owner is TWinControl) then
    begin
    FOwnerWndProc:=TWinControl(Owner).WindowProc;
    TWinControl(Owner).WindowProc:=WndProc; // Austauch der Fensterprocedure
    end;
end;
I come from outer space to save the human race
  Mit Zitat antworten Zitat