AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

E2009 und Package

Offene Frage von "yörsch"
Ein Thema von yörsch · begonnen am 12. Jul 2010 · letzter Beitrag vom 12. Jul 2010
Antwort Antwort
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, 11: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
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.009 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#2

AW: E2009 und Package

  Alt 12. Jul 2010, 11:23
TOnEventWndProc = function (var Message: TMessage): Boolean of object;
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Benutzerbild von yörsch
yörsch

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

AW: E2009 und Package

  Alt 12. Jul 2010, 11:31
Dickes DANKE Stevie


ich hab nur "of object" vergessen....



Jetzt kenn ich die Auswikrung und sollte meinenen Vetilator 2 Stufen höher schalten...
Jörg
have FUN

Geändert von yörsch (12. Jul 2010 um 12:39 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz