![]() |
Neue Komponente mit Event belegen?
Ich weiss nicht ob das überhaupt geht, da man den quellcode wohl vverändern muss, aber ich stell die Frage trotzdem um sicherzugehen.
Es ist nicht allzu schwer neue Komponenten auf einer Form zu erzeugen, aber ich frage euch, wie und ob man die Events der neuen Komponenten belegen kann. :gruebel: Zum Beispiel das OnClick-Event eines neuen Menueintrages oder Buttons. So in der Art:
Delphi-Quellcode:
Vermutlich verlange ich da ein bischen zu viel :stupid:
button1.onclickevent:=(begin
und dann halt der Quellcode, mit dem der Button belegt werden soll end;); |
Re: Neue Komponente mit Event belegen?
Wenn ich dich richtig verstehe, möchtest du dem Event einer Komponente per Quelltext eine Behandlung zukommen lassen, oder?
Kein Problem - du musst dir eine Prozedur erstellen, die die gleichen Parameter hat, wie das Event sie erwartet, und nach dem Erstellen der Komponente diese Prozedur dem entsprechenden Event zuweisen:
Delphi-Quellcode:
interface
type TMyForm = class(TForm) button1: TButton; procedure FormCreate(Sender: TObject); procedure MyClickHandler(Sender: TObject); end; implementation procedure TMyForm.MyClickHandler(Sender: TObject); begin DoSomething; bzw. "und dann halt der Quellcode, mit dem der Button belegt werden soll" ;-) end; procedure TMyForm.FormCreate(Sender: TObject); begin button1 := TButton.Create(Self); button1.Parent := Self; button1.OnClick := MyClickHandler; end; |
Re: Neue Komponente mit Event belegen?
Das bedeutet, dass man also keine Schnittstelle dort einbauen kann? Die einzige Möglichkeit wäre dann eine public-Variable zu deklarieren/erzeugen, die nach dann einen Wert zugewiesen bekommt, der dann im Event ausgelesen wird? Bischen umständlich , aber müsste wohl klappen.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 00:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz