Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Pintar una celda según el renglon en DBGrid (https://www.clubdelphi.com/foros/showthread.php?t=75256)

jorosmtz 09-08-2011 04:53:24

Pintar una celda según el renglon en DBGrid
 
Buen día, Aquí molestando de nuevo, ¿como le hago para saber el nombre del renglon donde me encuentro posicionado en un DBGrid?

Ej. tengo 4 campos desplegado en el DBGrid: "Fecha", "Hora", "Clave del producto" y "Nombre del producto". Ahora lo que quiero es comparar cuando el valor del campo Clave del producto, para poder pintar esa celda exclusivamente, de otro color. Ya se como pintar toda la columna, lo que no me sale es como saber el nombre del campo para solo pintar esa celda:

Código Delphi [-]
  DBGridAgenda.Canvas.Brush.Color := clYellow;
  DBGridAgenda.DefaultDrawColumnCell(Rect,DataCol,Column,State);

Desde ya muchas gracias...

jorosmtz 09-08-2011 05:07:22

Ya vi como :D... Gracias por leer el post.

Código Delphi [-]

if (Column.FieldName = 'CLAVEPRODUCTO') and (NombreDelProducto = '') then
   begin
     DBGridAgenda.Canvas.Brush.Color := clYellow;
     DBGridAgenda.DefaultDrawColumnCell(Rect,DataCol,Column,State);
   end;

Por cierto, esto es en el evento OnDrawColumnCell del DBGrid.

Nota para los curiosos, sin el Column.Field el evento pinta toda la columna del DBGrid donde el el campo NOMBREPRODUCTO (en mi DB) esté en blanco, pero con la condición Column.FieldName me va a pintar solo las celdas del renglon CLAVEPRODUCTO donde el NOMBREPRODUCTO esté vacio.


La franja horaria es GMT +2. Ahora son las 15:40:15.

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