La Web del Programador: Comunidad de Programadores
 
    Pregunta:  28346 - MANTENER EL ASPECTO DE CONTROLES INHABILITADOS
Autor:  David
Necesito utilizar controles (TLabel, TEdit etc.) que no me respondan a los eventos pero que mantengan su aspecto normal, utilizo la propiedad Enabled en falso pero me coloca la fuente en gris y no puedo cambiarla
¿Existe alguna forma de lograr que el control tenga su aspecto normal sin importar que la propiedad Enabled sea false?
Desde ya les agradesco su ayuda

  Respuesta:  Marco Romero
Me parece que no puedes controlar el aspecto de un control en función de su estado (Enabled/Disabled) a no ser que crees tú uno a medida mediante herencia (Que alguien me corriga si estoy equivocado).

Lo que puedes hacer es dejar la propiedad Enabled a "True", y por código inhabilitar los eventos que no te interesa que se lanzen. Por Ejemplo:

Edit1.OnClick := nil;
Edit1.OnExit := nil;

De esta forma estás deshabilitando el código que escribiste para gestionar estos eventos.

Cuando quieras habilitarlos de nuevo solo tienes que poner:

Edit1.OnClick := Edit1Click;
Edit1.OnExit := Edit1Exit;

Con esto vuelves a establecer el gestor del evento que escribiste en diseño.

Espero que esto te sirva de algo.
Un saludo.