[Lazarus-es] Aspecto de controles deshabilitados

Antonio Évora aevorar en gmail.com
Mar Oct 25 09:00:42 CEST 2011


El 25/10/11 01:02, Rubén Ibáñez escribió:
> Hola Gastón:
> Tienes razón y la tienen los demás. Tal vez podrías cambiarle el color 
> de fondo al Dbgrid inhabilitado, para facilitarle al usuario reconocer 
> la situación. Algo así:
> if Panel1.Enabled = False then
>      DBgrid1.Color:= clGray
>      else DBgrid1.Color:= clWhite;
> Un saludo,
> Rubén.
>
> 2011/10/24 Gastón Dall' Oglio <gaston.dalloglio en gmail.com 
> <mailto:gaston.dalloglio en gmail.com>>
>
>     Ah, entiendo.
>     Estoy comprobándolo en tiempo de diseño. Por ejemplo deshabilito
>     un TToolBar y sus botones siguen habilitados, tengo que
>     deshabilitar cada botón por separado. Veo que los botones carecen
>     de una propiedad ParentEnabled, que sería la manera de definirles
>     que se propague el estado del padre a ellos (ningún control la
>     tiene, algún motivo debe haber).
>
>     En el caso de la TDBGrid, las columnas no tienen la propiedad
>     Enabled, ni siquiera publica para usarla en tiempo de ejecución,
>     por lo que no se puede deshabilitar. Tal vez este asociada al
>     estado del TField.
>
>     En el caso del TTabControl, no se pueden deshabilitar los tabs
>     individualmente porque estos son simples Strings que se cargan en
>     la propiedad Tabs. Pero, deshabilitando el TTabControl los tabs
>     hijos SI se muestran deshabiltados (grises).
>
>     Bueno, no solucioné todos los problemas, pero al menos me ayudaron
>     a entenderlo. Gracias y saludos.
>
>
>     2011/10/24 <maximiliano.duarte en gmail.com
>     <mailto:maximiliano.duarte en gmail.com>>
>
>         Se bloquea el control q lo contiene.
>         Y lo visual no lo hace porque no propaga el evento de la
>         propiedad enabled a los hijos
>         Enviado desde mi BlackBerry® de Claro Argentina
>
>         -----Original Message-----
>         From: Gastón Dall' Oglio <gaston.dalloglio en gmail.com
>         <mailto:gaston.dalloglio en gmail.com>>
>         Date: Mon, 24 Oct 2011 17:15:52
>         To: Spanish version of Lazarus
>         List<lazarus-es en lists.lazarus.freepascal.org
>         <mailto:lazarus-es en lists.lazarus.freepascal.org>>
>         Reply-To: Spanish version of Lazarus List
>         <lazarus-es en lists.lazarus.freepascal.org
>         <mailto:lazarus-es en lists.lazarus.freepascal.org>>
>         Subject: Re: [Lazarus-es] Aspecto de controles deshabilitados
>
>         _______________________________________________
>         Lazarus-es mailing list
>         Lazarus-es en lists.lazarus.freepascal.org
>         <mailto:Lazarus-es en lists.lazarus.freepascal.org>
>         http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
>         _______________________________________________
>         Lazarus-es mailing list
>         Lazarus-es en lists.lazarus.freepascal.org
>         <mailto:Lazarus-es en lists.lazarus.freepascal.org>
>         http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
>
>
>     _______________________________________________
>     Lazarus-es mailing list
>     Lazarus-es en lists.lazarus.freepascal.org
>     <mailto:Lazarus-es en lists.lazarus.freepascal.org>
>     http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
>
>
>
> _______________________________________________
> Lazarus-es mailing list
> Lazarus-es en lists.lazarus.freepascal.org
> http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus-es
Hola Gastón,
Puedes crearte una función que reciba como parámetro el componente y si 
esta habilitado o no. Y en la función recorrer todos los componentes 
hijos de este y aplicarle el estado. Puedes hacerlo usando RTTI.

Yo tengo una clase que hace algo parecido para controlar la entrada y 
salida de los controles (eventos OnEnter y OnExit) que hace que 
determinados componentes cambien el fondo en función de si tienen el 
foco o no. Si quieres te la paso.

Un cordial saludo.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.lazarus-ide.org/pipermail/lazarus-es/attachments/20111025/d7b6625d/attachment-0002.html>


More information about the Lazarus-es mailing list