Ver Mensaje Individual
  #4  
Antiguo 29-06-2012
Avatar de movorack
[movorack] movorack is offline
Miguel A. Valero
 
Registrado: feb 2007
Ubicación: Bogotá - Colombia
Posts: 1.346
Reputación: 22
movorack Va camino a la famamovorack Va camino a la fama
Es más... haciendo esta modificación para manejar el TNotifyEvent en lugar del objeto, consigo obtener el nombre a partir del TNotifyEvent (cosa que no me funcionaba en el componente).

Código Delphi [-]
procedure TFrmTestPlanEjecD5.BtnAddAccionClick(Sender: TObject);
  var
    lEvento : TNotifyEvent;
    lAccion : TKplAccionItem;
    lNomEve : string;
    lNomNot : string;
begin
  lAccion := KPlGenDefi.Acciones.Add;
  lAccion.Nombre := 'Accion1';
  lAccion.Evento := BtnTontoClick;
  lEvento := BtnTontoClick;
  lNomEve := MethodName(@lAccion.Evento);
  lNomNot := MethodName(@lEvento);
  ShowMessage(Format('lAccion.NomEve : %s -- lNomEve : %s -- lNomNot : %s',
                     [QuotedStr(lAccion.NomEve),
                      QuotedStr(lNomEve),
                      QuotedStr(lNomNot)
                      ]));
end;

Edito: Acabo de ver en Classes.pas que TNotifyEvent = procedure(Sender: TObject) of object... he estado dando vueltas en circulo.
__________________
Buena caza y buen remar... http://mivaler.blogspot.com
Responder Con Cita