Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - OnClick bei selbst erstellter Klasse


Visum - Fr 19.07.02 20:17
Titel: OnClick bei selbst erstellter Klasse
Hi,
ich hab eine kleine Klasse geschrieben, die einen farbigen Button beschreibt.
Wie kann ich jetzt ein Objekt dieser Klasse auf ein Ereignis (OnClick) reagieren lassen? Was muss ich dafür in der Klasse machen?

mfG
Visum


Currywurst - Sa 20.07.02 20:36

wovon haste deine klasse den abgeleitet? gibs in dieser klasse das ereignis nich schon? ansonsten reicht vielleicht auch das OnMouseDown ereignis...


Tino - Sa 20.07.02 22:51

Wenn Du das OnClick Event selbst implementieren willst/musst dann würde ich ein Event vom Type TNotifyEvent erstellen.

Das heißt das Du zuerst eine Variable in Deiner Klasse deklarieren musst:

Quelltext
1:
2:
private
  fOnClick: tNotifyEvent;
Dann musst Du dem User der Deine Komponente benutzt auch das Event zur Verfügung stellen:

Quelltext
1:
2:
published
  OnClick: tNotifyEvent read fOnClick write fOnClick;
Dadurch wird das Event im Objektinspektor sichtbar.

Das Auslösen des Events müsste ungefähr so Aufgebaut sein:

Quelltext
1:
2:
If Assigned (fOnClick) Then
  fOnClick (Self);
Dadurch wird dann eventl. die Methode des User aufgerufen die sich hinter dem OnClick-Event befindet!

Gruß
TINO