Aun tengo dudas....
Hola amigos. Agradezco vuestra ayuda, pero aún hay algo que no funciona en todo esto... A ver. Imaginad el siguiente código:
type
TMiEvento = procedure (Sender: TObject; var value : Integer) ;
TMiClase = class
private
valor : Integer ;
event : TMiEvento ;
procedure SetValor (vlr : Integer) ;
public
property OnMyEvent: TMiEvento read event write event ;
property Asignar: Integer read valor write SetValor ;
end ;
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure mioOnEvento (Sender: TObject; var value : Integer) ;
end ;
var
Form1: TForm1;
mio : TMiClase ;
implementation
procedure TMiClase.SetValor (vlr : Integer) ;
begin
valor := vlr ;
if assigned (event) then event(self,vlr) ;
end ;
procedure TForm1.Button1Click(Sender: TObject);
begin
mio.Asignar := 4 ;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
mio := TMiClase.Create ;
mio.OnMyEvent := mioOnEvento ;
end;
¿Cómo capturo desde el Form1 el evento que lanza MICLASE? Si lo hago como sigue, no funciona...
procedure TForm1.mioOnEvento (Sender: TObject; var value : Integer) ;
begin
ShowMessage('El valor es = ' + intToStr(value)) ;
end ;
Gracias de antemano. Un saludo a todos.
__________________
craven
|