Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Problema con DBCHeckbox (https://www.clubdelphi.com/foros/showthread.php?t=23269)

el_barto 12-07-2005 16:42:01

Problema con DBCHeckbox
 
Buenos dias foroooo :D

Una pregunta sencilla pero que me hace patinar facilmente :confused: , uso un DBCheckbox y funciona perfectamente hace lo que yo quiero que haga y no hay problema en cuanto a su funcionalidad, el problema que surge es que cuando compilo mi aplicativo el dbcheckbox sale con un color gris y cuando hago click encima de DBcheck se pone de color blanco y ahora si puedo seleccionarlo o no seleccionarlo, por que pasa esto?? y como puedo hacer para corregirlo para que siempre este de color blanco y con un solo click pueda seleccionarlo.

yusnerqui 12-07-2005 17:18:34

Hola
 
Mira esto

Cita:

Empezado por Ayuda de Delphi
If AllowGrayed is set to True, the check box has three possible states: checked, unchecked, and grayed. If AllowGrayed is set to False, the check box has only two possible states: checked and unchecked.

entonces:
Código Delphi [-]
  DBChec.AllowGrayed := False

Saludos.;)

el_barto 12-07-2005 17:48:05

Gracias Yusnerqui pero no ya adicione esta linea de codigo y sigue saliendo grissss, y eso si es un problema por que tengo que darle click encima para que quede habilitado

yusnerqui 12-07-2005 17:58:19

Hola de nuevo
 
Cita:

Empezado por el_barto
Gracias Yusnerqui pero no ya adicione esta linea de codigo ...

En que evento la añadistes????:confused: :confused: :confused:

Pero además más que adicionar la línea de código puedes cambiar la propiedad en el object inspector y de seguro te funciona.;)

Saludos:D

el_barto 12-07-2005 18:30:32

en el object inspector ya esta en false... Sospecho que se pone asi porque es en un insert y esta indefinido el checkbox entonces voy a colocarlo en 1 manualmente

Lepe 13-07-2005 12:17:24

Se supone que al crear un registro nuevo, el DBcheckbox no tiene el valor true ni falso, ya que su campo asociado tiene el valor Null, por tanto se queda en modo intermedio (gris)

Para solucionarlo, en el evento OnNewRecord de la tabla en cuestion, asigna al campo el valor correspondiente a false, para que se quede en blanco.

O bien usa la posibilidad de "valor por defecto" en la especificación de ese campo en la base de datos.

Quizás lo he explicado de una forma compleja; puede que esto te interese:

Un campo de tipo String, puedes usarlo como si fuera un boolean, asignando al DBCheckbox en sus propiedades ValueChecked := 'Si' y en la propiedad ValueUnchecked := 'No', guardarás en la base de datos esas palabras. Muy útil para listados. En este caso, en el OnNewRecord usarías: Campo.AsString:= 'No'; y ya lotienes en blanco su DBCheckbox correspondiente


Un saludo.


La franja horaria es GMT +2. Ahora son las 06:22:22.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi