Ver Mensaje Individual
  #7  
Antiguo 18-09-2003
Ruben_Cu Ruben_Cu is offline
No confirmado
 
Registrado: oct 2003
Ubicación: Mariel, Cuba
Posts: 271
Reputación: 0
Ruben_Cu Va por buen camino
Hola CORBATIN, el problema está en heredar las propiedades del ancestro de los controles a colocar en tu form. Si revisas la herencia de las componentes verás que el tcontrol tiene las propiedades Color y Font que son después heredadas por sus descendientes, pero esto tiene un problema y es que en el tcontrol esas propiedades son protegidas, entonces el primer paso sería crear una nueva clase del tcontrol que haga published esas dos propiedades:
Código:
implementation
type tmicontrol=class (tcontrol)
published
        property color;
        property font;
        end;
Una vez que tenemos esta clase llamamos a los eventos haciendo el typecast con el sender que será siempre un descendiente del tcontrol:
Código:
procedure TForm1.Edit1Enter(Sender: TObject);
begin
        if sender is tcontrol then
        with tmicontrol(sender) do begin
        color:= clred;
        font.Color:=clblue;
        end;
end;

procedure TForm1.Edit1Exit(Sender: TObject);
begin
        if sender is tcontrol then
        with tmicontrol(sender) do begin
        color:= clwhite;
        font.Color:=clblack;
        end;
end;
Solo te resta asociar los eventos Enter y Exit de todos tus controles a los del edit u objeto elegido por tí para escribir las declaraciones.
Creo que te debe funcionar, prueba y después nos comentas.
Saludos y suerte
Responder Con Cita