Autor Beitrag
OneOfTen
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: Di 11.01.05 17:39 
Hio, Leute.

Ich habe da ein Problem. Ich möchte eine Prozedur als Parameter übergeben, ungefähr so:

ausblenden 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
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 6393
Erhaltene Danke: 147

Windows 7 + Windows 10
Sydney Prof + CE
BeitragVerfasst: Di 11.01.05 17:42 
Die Übergabe muss als Prozedure-Adresse erfolgen. Dann sollte es funktionieren.
OneOfTen
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: 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
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 30



BeitragVerfasst: Di 11.01.05 18:22 
Einen Typen für die Methode bzw. Procedure deklarieren:
ausblenden Delphi-Quelltext
1:
2:
3:
Type
  TMyOnClick  = Procedure();
  TMyOnClickO  = Procedure() Of Object;

Und dann in der Procedure / Funktion den Typ übergeben...


Bye
MitschL
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 211

Win 98 SE, Win 2000
D5 Pers, D6 Pers und D7 Pro
BeitragVerfasst: Di 11.01.05 18:23 
Da weis ich schon mal was...
,dann will ich es nicht verkommen lassen.

ausblenden Delphi-Quelltext
1:
type OnClick = procedure{params:paramTypes} );					

irgendwo darüber, ermöglicht auch die Übergabe einer Prozedur-Variablen.

So.

gegüßt!
MitschL


[edit] Und auch noch zu langsam. :?
OneOfTen
Ehemaliges Mitglied
Erhaltene Danke: 1



BeitragVerfasst: 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