![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
||||
|
||||
RXDBGrid.OnDrawColumnCell
Hola amigos, una consulta más.
Quiero visualizar en un DBGrid datos referentes a tuplas de una tabla. Entre otros existen campos de tipo fecha y algunas tuplas continen en fecha almacenado el dato '01/01/1900'. Mi objetivo es no visualizar esas fechas en la columna destinada a este atributo, pero si todas aquellas que tengan fecha diferente a 01/01/1900. Para ello he hecho este código.
Pero el programa se me queda como colgado y como parpadeante dicho RXDBGrid. ¿Sabríais decirme porqué? o ¿como hacerlo?. ![]() Gracias.
__________________
El meu país és tan petit, que des de dalt d'un campanar es pot veure el campanar veí. |
#2
|
||||
|
||||
Se te queda colgado porque te está entrando en un buble; Me da la impresión de que al pintar el DBGrid estás modificando el registro, cosa que seguramente te volverá a repintar el DBGrid y así sucesivamete. Creo que no es el lugar ni el modo de hacerlo.
Si lo que quieres es que la fecha no se vea, pues modifica "el pintado" de la celda, pero no modifiques el registro. Y si lo que quieres es modificar el registro, no creo que un evento de pintado de celdas sea el más adecuado. Haz una búsqueda en los foros por el evento OnDrawColumnCell y seguro que encuentras ejemplos de cómo pintar la celda, pero repito creo que modificar el registro ahí es un grave error.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
||||
|
||||
No creo que ésta sea una cuestión que se resuelva con dibujo. Yo me fijaría quizá en el evento OnGetText del TField correspondiente, o bien hacer un campo calculado que devuelva la fecha si es distinta de '01/01/1900' y blanco en caso de coincidir.
// Saludos |
#4
|
||||
|
||||
Ufff, Viernes y calentándome el coco..., menos mal que cobro una pasta!!! (No hay emoticono de descojono tirado por el suelo).
Cita:
Gracias. ![]()
__________________
El meu país és tan petit, que des de dalt d'un campanar es pot veure el campanar veí. Última edición por Cabanyaler fecha: 18-11-2005 a las 18:12:54. |
#5
|
||||
|
||||
Tambien he intentado esto propuesto
Cita:
![]() He mirado el evento asociado a los campos del Grid, pero no existe ese evento. ¿Sobre que objeto se aplica ese evento? Gracias y buen fin de semana.
__________________
El meu país és tan petit, que des de dalt d'un campanar es pot veure el campanar veí. |
#6
|
||||
|
||||
Cita:
http://www.clubdelphi.com/foros/showthread.php?t=16818 Cita:
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#7
|
||||
|
||||
Gracias, el próximo Lunes tomo el asunto.
Buen fin de semana y a descansar. ![]()
__________________
El meu país és tan petit, que des de dalt d'un campanar es pot veure el campanar veí. |
#8
|
||||
|
||||
Ya está, a veces las cosas son más sencillas de lo que parecen:
No he escrito lo que queria en el DBGrid, ya que esto suponia escribir en los datos directamente del Dataset, simplemente para no ver lo que no quiero igualo el color de la fuente con el del fondo, de ese modo no se vé. Gracias a todos y un saludo.
__________________
El meu país és tan petit, que des de dalt d'un campanar es pot veure el campanar veí. |
#9
|
||||
|
||||
Aunque hay un viejo provervio informático que dice "...si funciona, ¡¡NO LO TOQUES!!", creo que vale la pena que pruebes el método que te comenta Roman del GetText (aunque el que comentas ya te funciona); Es más eficiente, que no volver a dibujar toda la celda.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi ![]() P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#10
|
||||
|
||||
Si, gracias, ya lo he mirado, pero aplicaré el corolario
![]() La ventaja que presenta el evento OnGetText frente a tratamiento del Canvas, es que el campo se visualizará del modo establecido en el evento OnGetText en cualquier lugar donde lo visualices, mientras en el OnDrawColumnCell, sólo se aplicará al Grid que lo posee. Gracias a todos. ![]()
__________________
El meu país és tan petit, que des de dalt d'un campanar es pot veure el campanar veí. Última edición por Cabanyaler fecha: 22-11-2005 a las 09:07:47. |
![]() |
|
|
![]() |
|