Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Conexión con bases de datos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 01-06-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿Y has probado lo que te digo? En OnDrawColumnCell tu código pinta de amarillo el fondo cuando UpdateStatus <> usUnmodified. Cuando aplicas o cancelas los cambios, es de suponerse que UpdateStatus sea igual usUnmodified (si no es así tendrás que revisar que valor toma para considerarlo en el condicional) y por tanto no se usará el color amarillo. Pero esto puede no reflejarse de inmediato pues OnDrawColumnCell ocurrirá sólo cuando el DBGrid necesita pintarse. Por ello, al momento de aplicar o cancelar los cambios conviene que hagas un DBGrid.Repaint para forzar el repintado.

// Saludos
Responder Con Cita
  #2  
Antiguo 02-06-2006
Alexis De la Cr Alexis De la Cr is offline
Miembro
 
Registrado: may 2006
Ubicación: Puebla
Posts: 124
Poder: 21
Alexis De la Cr Va por buen camino
Hola Roman, muchas gracias por tu respuesta. Pues bien, ya lo intente lo que me dices, pero no sucede nada cuando ejecuto dbgrid.repaint, queda de color amarillo el fondo y no hay forma (al menos las que yo conozco) de quitarle ese color
Responder Con Cita
  #3  
Antiguo 02-06-2006
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
El DBGrid va a pintar exactamente lo que tú le digas. Si el color no cambia es entonces porque UpdateStatus sigue siendo distinto de usUnmodified después de cancelar o modificar. De ser esto tendrás que encontrar otra forma de controlar cuándo va de amarillo.

O bien, aunque no me suena del todo, pon explícitamente el color del canvas en blanco en el else:

Código Delphi [-]
if MyQuery1.UpdateStatus <> usUnmodified then
begin
  TCRDBGrid(Sender).Canvas.Brush.Color:= clYellow;
  button3.Enabled:=True;
end
else
begin
  TCRDBGrid(Sender).Canvas.Brush.Color:= clWhite;
end;

// Saludos
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Cambiar color a DBGrid Esau OOP 7 28-01-2011 22:26:41
RAVE ¿Como cambiar color de fondo segun resultado del query? ach_666 Impresión 0 03-05-2006 00:33:28
Cambiar el color de fondo de varios componentes... alt126 C++ Builder 1 05-02-2005 11:47:41
Cambiar el color de fondo de un TTextBrowser ruina Lazarus, FreePascal, Kylix, etc. 4 26-06-2004 15:52:13
Cambiar Color a un DbGrid UTECYBER OOP 1 03-11-2003 18:29:02


La franja horaria es GMT +2. Ahora son las 18:23:55.


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