Thema: Delphi Event Handling

Einzelnen Beitrag anzeigen

Highttower

Registriert seit: 2. Jun 2009
Ort: Worms
88 Beiträge
 
Delphi 2010 Professional
 
#1

Event Handling

  Alt 22. Jun 2009, 16:58
Hallo zusammen,
auf meiner Reise von C++ zu Delphi bin ich auf ein weiteres kleines Problem gestoßen: Events

Ich hab mal nen kleines Testprogramm dazu geschrieben:

Delphi-Quellcode:
  TAEvent = procedure(A:String) of object; // soweit klar ein Funktionszeiger

TBrowser = class
  private
    FEvent: TAEvent;
  public
    property Event: TAEvent read FEvent write FEvent;
    procedure show;
end;


TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
    procedure AnotherEvent(A: String);

    private
        FBrowser: TBrowser;

    public

end;


var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.AnotherEvent(A: String);
begin
    ShowMessage(a);
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
    FBrowser := TBrowser.Create; // soweit noch klar und wenn ich alle möglichen Bücher über Delphi lese und Googel befrage müsste das auch gehn:
    self.AnotherEvent := (FBrowser.Event); // geht so scheinbar nicht; laut Kompiler: zu wenige Parameter aber ich weise doch nur nen Pointer zu oder nicht?
end;

procedure TBrowser.show;
begin
    ShowMessage('dfdfdf');
    Event('ddddd');
end;
Kann mir jemand erklären warum das so nicht geht? Ich hab schon alles mögliche Probiert das
 self.AnotherEvent := (FBrowser.Event); Ist meine Momentane Fassung, so Späße wie nen Temporäres Object mit "with" kreieren oder Tempoäre Variablen, als auch das Event als Pointer zu handeln und das andere als Adresse bringt alles nix. Auch Klammersetzung in jeglicher Form haben nix gebracht.

Vielen lieben dank,

Tobi

PS: So bald ich mal nen mindest Wissen in Delphi hab schreib ich mal nen kleines Tut für Umsteiger von C++ auf Delphi
Tobi
Rechtschreib und Semikolion Fehler dürfen behalten werden.
  Mit Zitat antworten Zitat