Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Komponente erstellen und Ereignis eine Methode zuweisen
Stevie - Do 11.09.03 11:28
Titel: Komponente erstellen und Ereignis eine Methode zuweisen
Hi,
ich versuche verzweifelt eine Komponente abzuleiten und einem bereits vorhandenen Ereignis eine Methode zuzuweisen, die standardmäßig ausgeführt wird. Wie mache ich das?
maximus - Do 11.09.03 16:10
hi,
wenn du eine compo ableitest, dann würde ich kein event zuweisen, da es ja vom 'user' wieder überschrieben werden kann. SOndern du 'overridest' eine der vielen virtuellen methoden:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| TBla = class(TWinControl) ... public paint; override; ... end;
... procedure TBla.paint; begin inherited paint; end; |
verstehst du?
Stevie - Fr 12.09.03 08:37
Den wahren Sachverhalt jetzt hier zu erläutern, würde zu weit führen (Indy-Komponenten) Aber nehmen wir an, ich möchte ein neuen Button erstellen, der beim Draufklicken immer irgendwas macht, muss ich dann nicht dem OnClick-Ereignis eine Routine irgendwas zuweisen???
Tino - Fr 12.09.03 09:41
Hallo,
es gibt zu fast jedem Event eine entsprechende Procedure die nur das Event aufruft. Beim OnClick-Event wäre das die Click Procedure. Diese Proceduren sind in der Protected Sektion als Virtual definiert. Das heißt du kannst diese Proceduren überschreiben um z. B. in abgeleiteten Komponeten auf das Click reagieren. Vergiss nicht das Inherited aufzurüfen damit das vom User definierte OnClick-Event auch aufgerufen wird.
Gruß
Tino
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 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!