Korrigiert mich bitte, falls ich was Falsches sag:
Ein Prozedurpointer kann einem Ereignishandler zugewiesen werden.
Diese Prozedur oder Funktion kannst du selbst erstellen, du kannst aber auch eine nehmen, die bereist existiert.
Also folgendes müsste z. B. gehen:
Delphi-Quellcode:
//Objekte erzeugen
//...
MyObject.onClick := ShowMessage(MyObject.Text);
Über den Sinn und Zweck lässt sich da allerdings streiten.
Ob es eine andere (sinnvolle) Möglichkeit gibt, weiß ich nicht.