Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Prozedur als Parameter
Delete - Di 11.01.05 17:39
Titel: Prozedur als Parameter
Hio, Leute.
Ich habe da ein Problem. Ich möchte eine Prozedur als Parameter übergeben, ungefähr so:
Delphi-Quelltext
1:
| Procedure TForm1.initButton(but: TButton; x,y,h,w: Integer; prozedur: OnClick); |
Es soll ein Button initialisiert werden und je nach Bedarf eine andere Prozedur bekommen.
Ist das möglich? So wie in meinem Beispiel gehts schonmal nicht.
Vielen Dank für die Hilfe :-)
One Of Ten
jasocul - Di 11.01.05 17:42
Die Übergabe muss als Prozedure-Adresse erfolgen. Dann sollte es funktionieren.
Delete - Di 11.01.05 18:12
Habe mein Problem gerade selbst gelöst.
Einfach dem Parameter den Typ TNotifyEvent geben und den Namen der Prozedur beim Aufruf der Prozedur übergeben...
Noch einen schönen Tag..
One Of Ten
Kedariodakon - Di 11.01.05 18:22
Einen Typen für die Methode bzw. Procedure deklarieren:
Delphi-Quelltext
1: 2: 3:
| Type TMyOnClick = Procedure(); TMyOnClickO = Procedure() Of Object; |
Und dann in der Procedure / Funktion den Typ übergeben...
Bye
MitschL - Di 11.01.05 18:23
Da weis ich schon mal was...
,dann will ich es nicht verkommen lassen.
Delphi-Quelltext
1:
| type OnClick = procedure( ); |
irgendwo darüber, ermöglicht auch die Übergabe einer Prozedur-Variablen.
So.
gegüßt!
MitschL
[edit] Und auch noch zu langsam. :?
Delete - Di 11.01.05 18:50
So ist das nun mal, MitschL ;-)
Hättest du früher gepostet, hätte ich mich wahrscheinlich nicht weiter drangesetzt.
Aber dennoch ist die Idee mit dem Type gar nicht schlecht.
Mfg
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!