Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 08-11-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por feliz-58 Ver Mensaje
...
entonces cada ves que el programa inicie o le den a otro boton para "actualizar" se verifique si en los respectivos eventos hay algo escrito, y si lo hay, los botones se coloquen de color rojo, ya sea el 1 o el 2.
es posible?
Hola feliz-58.

Con respecto al evento para verificar el estado del campo "Evento" y poner en consecuencia el color del TBitBtn, podrías usar el evento OnDataChange del TDataSource asociado al TADOTable:
Código Delphi [-]
procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
const
   ESTADO : array[Boolean] of TColor = (clBlack, clRed);
begin
  with ADOTable1 do
  begin
    if FieldByName('DIA').AsString = '1' then
      BitBtn1.Font.Color := ESTADO[Trim(FieldByName('Evento').AsString)='']
    else if FieldByName('DIA').AsString = '2' then
      BitBtn2.Font.Color := ESTADO[Trim(FieldByName('Evento').AsString)=''];
  end;
end;

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #2  
Antiguo 10-11-2013
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Question

Cita:
Empezado por ecfisa Ver Mensaje
Hola feliz-58.

Con respecto al evento para verificar el estado del campo "Evento" y poner en consecuencia el color del TBitBtn, podrías usar el evento OnDataChange del TDataSource asociado al TADOTable:
Código Delphi [-]
procedure TForm1.DataSource1DataChange(Sender: TObject; Field: TField);
const
   ESTADO : array[Boolean] of TColor = (clBlack, clRed);
begin
  with ADOTable1 do
  begin
    if FieldByName('DIA').AsString = '1' then
      BitBtn1.Font.Color := ESTADO[Trim(FieldByName('Evento').AsString)='']
    else if FieldByName('DIA').AsString = '2' then
      BitBtn2.Font.Color := ESTADO[Trim(FieldByName('Evento').AsString)=''];
  end;
end;

Saludos
Hola
como aplicas los colores?
Saludos!
Responder Con Cita
  #3  
Antiguo 10-11-2013
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Cita:
Empezado por feliz-58 Ver Mensaje
Hola
como aplicas los colores?
Saludos!
Hola feliz-58.

Las variables de tipo Boolean pueden tomar dos valores: False o True. Notarás en la declaración de la constante de arreglo "ESTADO", que su índice es de tipo Boolean y que por tanto admite dos valores de tipo TColor: clBlack y clRed.
Es decir, el valor de ESTADO[False] es igual clBlack (negro) y de ESTADO[True] es igual clRed (rojo).

Por otro lado, la comparación:
Código Delphi [-]
Trim(FieldByName('EVENTO').AsString) = ''
arrojará un resultado negativo si el campo "EVENTO" tiene algún carácter, o positivo de otro modo.

Si por ejemplo estamos en el registro cuyo campo DIA tiene valor "1" y el campo "Evento" tiene el valor "salir a pasear el perro", el resultado de la comparación anterior será False por lo que el BitBtn tomará el color negro. Si "Evento" no tuviera ningún contenido, el resultado sería True y por lo tanto le sería asignado el color rojo.

Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #4  
Antiguo 10-11-2013
feliz-58 feliz-58 is offline
Miembro
 
Registrado: sep 2012
Posts: 314
Poder: 12
feliz-58 Va por buen camino
Cita:
Empezado por ecfisa Ver Mensaje
Hola feliz-58.

Las variables de tipo Boolean pueden tomar dos valores: False o True. Notarás en la declaración de la constante de arreglo "ESTADO", que su índice es de tipo Boolean y que por tanto admite dos valores de tipo TColor: clBlack y clRed.
Es decir, el valor de ESTADO[False] es igual clBlack (negro) y de ESTADO[True] es igual clRed (rojo).

Por otro lado, la comparación:
Código Delphi [-]
Trim(FieldByName('EVENTO').AsString) = ''
arrojará un resultado negativo si el campo "EVENTO" tiene algún carácter, o positivo de otro modo.

Si por ejemplo estamos en el registro cuyo campo DIA tiene valor "1" y el campo "Evento" tiene el valor "salir a pasear el perro", el resultado de la comparación anterior será False por lo que el BitBtn tomará el color negro. Si "Evento" no tuviera ningún contenido, el resultado sería True y por lo tanto le sería asignado el color rojo.

Saludos
Gracias
entendi!

Saludos!
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
crear un tigger para que se dispare cuando cambie la fecha en firebird n03l Firebird e Interbase 6 24-07-2012 18:21:51
Un boton 3D con color con componentes de la VCL rrf Varios 0 03-02-2009 17:47:35
Saber cuando has pulsado Enter en un botón diego11 Varios 4 07-12-2007 17:08:07
Error en sql cuando cambie de version IVAND Firebird e Interbase 4 03-05-2005 01:44:34
Botón con Imagen y color. kukinn Varios 10 13-01-2005 14:32:30


La franja horaria es GMT +2. Ahora son las 20:24:23.


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
Copyright 1996-2007 Club Delphi