Cita:
|
Empezado por Chelo
....lo que me dices lo entiendo bien ahora lo que no me queda claro es como hacer para "enganchar/capturar" uno de los eventos del componente (mouseDown, por ejemplo) a una rutina que me permita manejar la selección de éstos componentes. Lo he intentado hacer y no me sale.
|
Supongo, por lo que me pareció entender en los mensajes, que los componentes los vas creando tú por código, pues cuando creas los componentes le asignas a un de sus eventos una rutina creada por tí (como pista la rutina debe tener la misma estructura que tiene el evento que vas a "enganchar");
Por ejemplo si quieres crear Edit's y enganchar los eventos OnExter y OnExit (para cambiar el color del control) a unos métodos creados por ti, sería algo así:
Código Delphi
[-]
procedure myEnter(Sender:TObject);
procedure myExit(Sender:TObject);
...
procedure TForm1.myExit(Sender: TObject);
begin
if (Sender is TEdit) then begin
TEdit(Sender).Color := clWindow;
end;
end;
procedure TForm1.myEnter(Sender: TObject);
begin
if (Sender is TEdit) then begin
TEdit(Sender).Color := clInfoBk;
end;
end;
...
var
i:Integer;
ed:TEdit;
begin
for i := 0 to 3 do begin
ed := TEdit.Create(Self);
ed.Parent := Self;
ed.Name := 'Edit' + IntToStr(i);
ed.Top := 100 + (i * 30);
ed.Left := 300;
ed.OnEnter := myEnter;
ed.OnExit := myExit;
end;