Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   como editar el caption de una tdbedit boolean (https://www.clubdelphi.com/foros/showthread.php?t=76034)

asdbernardo 05-10-2011 07:56:39

como editar el caption de una tdbedit boolean
 
Buenas gente! Saludos...

necesito resolver unas dudas... es la siguiente como hago para que un tdbcombobox que tenga boolean de parametro, en este caso me trae TRUE y FALSE, como puedo decirle a el que Activado es lo que debe mostrar en vez de true o false, es decir, activado es = a true, y Desactivado = a false? tendra alguna caracteristica para renombrar lo que trae por un caption personalizado y no afectar lo que trae? no se si me explique

Gracias de antemano...

Neftali [Germán.Estévez] 05-10-2011 09:50:23

Yo no te he entendido muy bien. :(

Primero hablas de un DBEdit (en el título) y luego de un DBComboBox. ¿Los valores vienen de Base de Datos?
¿Están almacenados como String?

A veces se puede "repintar" el contenido, a veces se puede usar otro control para mostrar valores distintos y el DBComboBox dejarlo oculto; Tal vez también puedas cambiar los valores en la propiedad DisplayValue del TField...

Casimiro Notevi 05-10-2011 13:51:57

Cita:

Empezado por Neftali (Mensaje 414604)
Yo no te he entendido muy bien. :(
Primero hablas de un DBEdit (en el título) y luego de un DBComboBox. ¿Los valores vienen de Base de Datos?


Un tdbedit boolean, un tdbcombobox con parámetro boolean, cómo decirle que está activado lo que debe mostrar.


Una aclaración falta.

asdbernardo 05-10-2011 17:09:38

Cita:

Empezado por Neftali (Mensaje 414604)
Yo no te he entendido muy bien. :(

Primero hablas de un DBEdit (en el título) y luego de un DBComboBox. ¿Los valores vienen de Base de Datos?
¿Están almacenados como String?

A veces se puede "repintar" el contenido, a veces se puede usar otro control para mostrar valores distintos y el DBComboBox dejarlo oculto; Tal vez también puedas cambiar los valores en la propiedad DisplayValue del TField...

Tienes razon, en el titulo me equivoque porque reformule la pregunta para ver si me entendia mejor...

es un dbcombobox que el valor boolean viene de la base de datos y Muestra True o False depende de como se guardo, por lo que quiero que muestre a la vista en vez de TRUE o FALSE, me muestre 'Activado' = True y 'Desactivado' = false.

Y con respecto a las alternativas, cual es la mejor...?

Gracias y saludos.

Caro 05-10-2011 17:35:25

Hola asdbernardo, puedes utilizar el evento OnGetText de tu campo:

Código Delphi [-]
procedure QueryEstadoGetText(Sender: TField; var Text: String;
  DisplayText: Boolean);
begin
 if Sender.AsBoolean then
  Text := 'Activado'
 else
  Text := 'Desactivado';
end;

Saluditos

asdbernardo 05-10-2011 17:38:15

Cita:

Empezado por Caro (Mensaje 414619)
Hola asdbernardo, puedes utilizar el evento OnGetText de tu campo:

Código Delphi [-]
procedure QueryEstadoGetText(Sender: TField; var Text: String;
  DisplayText: Boolean);
begin
 if Sender.AsBoolean then
  Text := 'Activado'
 else
  Text := 'Desactivado';
end;

Saluditos

Gracias caro muy amable, ahora el procedure es en el dataset? yo utilizo unidac es decir unitable, datasource, etc. alli como va?
porq te recuerdo es un tdbcombobox. y en los eventos no veo el ongettext

Saludos y Gracias de nuevo!

Caro 05-10-2011 17:46:36

Cita:

Empezado por asdbernardo (Mensaje 414620)
....... ahora el procedure es en el dataset? yo utilizo unidac es decir unitable, datasource, etc. alli como va?
porq te recuerdo es un tdbcombobox. y en los eventos no veo el ongettext

Hola, el OnGetText esta en los eventos de tu campo, tu campo debe ser persistente (hacer doble click sobre tu dataset (UniTable) y añades tus campos), seleccionas el campo en cuestión y veras sus eventos.

Saluditos

asdbernardo 05-10-2011 18:21:06

Cita:

Empezado por Caro (Mensaje 414621)
Hola, el OnGetText esta en los eventos de tu campo, tu campo debe ser persistente (hacer doble click sobre tu dataset (UniTable) y añades tus campos), seleccionas el campo en cuestión y veras sus eventos.

Saluditos

Listo caro, encontre y use tu codigo, Y me mostro lo que queria, pero sigo con el mismo problema, ya que no simula que Activado = true, y tampoco que Desactivado = false, y me marca este error( 'Activado' is not a valid boolean value for field 'borrado' ) me esta generando el mismo error que mostrar directamente desde el tdbcombobox en el parametro Items. y colocar Activado y Desactivado. me marca el mismo error :(

Saludos caro, de nuevo muchas gracias!

Caro 05-10-2011 18:39:21

Supongo que te da el error al grabar los datos, para que tome los valores correctos, puedes utilizar el evento OnSetText de tu mismo campo:

Código Delphi [-]
procedure QueryEstadoSetText(Sender: TField;
  const Text: String);
begin
 if Text='Activado' then
  Sender.Value := True
 else
  Sender.Value := False;
end;

Saluditos

asdbernardo 05-10-2011 18:44:21

Cita:

Empezado por Caro (Mensaje 414631)
Supongo que te da el error al grabar los datos, para que tome los valores correctos, puedes utilizar el evento OnSetText de tu mismo campo:

Código Delphi [-]
procedure QueryEstadoSetText(Sender: TField;
  const Text: String);
begin
 if Text='Activado' then
  Sender.Value := True
 else
  Sender.Value := False;
end;

Saluditos

Si es correcto mi querida Caro, pero no tenia conocimientos de estos eventos.. me estoy iniciando en el delphi.. trabajo en un programita sencillo.. GRacias probare y te cuentO!

Saludos !


La franja horaria es GMT +2. Ahora son las 04:11:01.

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