necesito colocar a través de componentes y asignar un controlador de eventos (por ejemplo dinámicamente la asignación de evento OnClick para todos TButton aDelphi: cómo asignar dinámicamente un controlador de eventos sin sobrescribir el controlador de eventos existente?
ShowMessage('You clicked on ' + (Sender as TButton).Name);
El problema es que en algunos casos ya asignado el evento TButton OnClick.
¿hay una manera de resolver el problema
Imaginemos que tengo Button1 para el que el controlador de eventos onclick harcoded es:?
ShowMessage('This is Button1');
Después de mi "análisis" Me gustaría que el controlador de eventos completo para Button1 se convierte en:
ShowMessage('This is Button1'); // design time event handler code
ShowMessage('You clicked on ' + (Sender as TButton).Name); // runtime added
Nota: Busco a una soliution que me permite usar TButton ya que es sin heredar de ella.
Pregunta similar (con el código completo como respuesta): http://stackoverflow.com/questions/2441672/how-can-i-dynamically-inject-code-into-event-handlers-in-delphi – mjn
eche un vistazo a TApplicationEvents fuente, hay el mismo evento que usted desea. –
El término general para lo que quiere es * eventos de multidifusión *, pero Delphi no tiene esa característica. –