Einzelnen Beitrag anzeigen

Benutzerbild von yörsch
yörsch

Registriert seit: 10. Jan 2007
Ort: Lampertheim
206 Beiträge
 
Delphi XE2 Architect
 
#1

E2009 und Package

  Alt 12. Jul 2010, 12:20
Hallo Zusammen,

ich will die Ereignisse von WndProc zu einen Package weiter leiten.
Und kriege es nicht hin

Ereignisse umbiegen mach ich sonst täglich und Ohne Probleme...
auch in und mit Package...

entweder ist es wirklich zuheiß
oder ich bin das auf was gestossen was ich mir nicht erklären kann?

Mein kleines Fenster

Delphi-Quellcode:
unit FoBase;

interface

uses
  Forms, Classes, SysUtils, Messages, controls;

type

  TOnEventWndProc = function (var Message: TMessage):boolean;

  TFormBase = class(TForm)
  protected
    FOnEventWndProc : TOnEventWndProc;
    procedure WndProc(var Message: TMessage); override;
  public
     Property OnEventWndProc : TOnEventWndProc read FOnEventWndProc write FOnEventWndProc ;
  end;

implementation
{$R *.DFM}

uses EventManager;
{ TFormBase }
procedure TFormBase.WndProc(var Message: TMessage);
var
  inherit : boolean;
begin
 inherit := True;

 if Assigned(FOnEventWndProc )then
    inherit := FOnEventWndProc(Message);
 if inherit then
       inherited;
end;


Mein Objekt was sich beim Fenster Anmeldet


Delphi-Quellcode:

unit NavForm;

interface

Uses Windows, classes, StdCtrls, Forms, Graphics, Controls, extctrls, Messages,
     FoBase;

type

  TNavForm = class
  private
    FForm : TFormBase;
  public
    constructor create (xForm: TObject);
    procedure Register();
    function EventWndProc(var Message: TMessage): Boolean;
  end;

implementation

//##############################################################################
constructor TNavForm.create(xForm: TObject);
begin
  FForm := TFormBase(xForm);
end;

function TNavForm.EventWndProc(var Message: TMessage): Boolean;
begin
 result := True;
 // Mach was....
end;

procedure TNavForm.Register;
begin
  FForm.OnEventWndProc := Self.EventWndProc; // <= HIER Meckert der Compiler
end;
[DCC Fehler] NavForm.pas(117): E2009 Inkompatible Typen: 'Reguläre Prozedur und Methodenzeiger'


Wenn das nicht <Instanz>.<Methode> entspricht ???.

Hat einer eine Idee?
Jörg
have FUN
  Mit Zitat antworten Zitat