Ver Mensaje Individual
  #1  
Antiguo 07-06-2008
Avatar de gluglu
[gluglu] gluglu is offline
Miembro Premium
 
Registrado: sep 2004
Ubicación: Málaga - España
Posts: 1.455
Reputación: 23
gluglu Va por buen camino
TWinControl en Delphi 2007

Hola a todos !

Estoy intentando pasar código a Delphi 2007.

Al parecer antes (al menos en Delphi 2006) la clase TWinControl tenía publicadas entre otras las propiedades Color y Font.

Yo al menos lo utilizaba para cambiar el color de fondo y del texto al obtener foco en un control de edición.

Código Delphi [-]
(Sender as TWinControl).Color := clWindow;
(Sender as TWinControl).Font.Color := clMaroon;

Ahora ya en Delphi 2007 estas propiedades no están publicadas y no puedo acceder directamente a ellas. Ello me obliga a hacer el Cast para cada caso, sean po.ej. TLabel's, TEdit's, o cualquier otro Control.

Existe alguna manera de evitar esto, es decir, no tener que preguntar cada vez por el tipo de control que quiero manejar ?

Quisiera evitar esto precisamente :

Código Delphi [-]
if Sender is TLabel then begin
  (Sender as TLabel).Color := clWindow;
  (Sender as TLabel).Font.Color := clMaroon;
end;
 
if Sender is TEdit then begin
  (Sender as TEdit).Color := clWindow;
  (Sender as TEdit).Font.Color := clMaroon;
end;
 
if Sender is TDBEdit then begin
  (Sender as TDBEdit).Color := clWindow;
  (Sender as TDBEdit).Font.Color := clMaroon;
end;
 
if Sender is TCheckBox then begin
  (Sender as TCheckBox).Color := clWindow;
  (Sender as TCheckBox).Font.Color := clMaroon;
end;
 
....

Gracias por vuestra ayuda. Saludos
__________________
Piensa siempre en positivo !
Responder Con Cita