¿Y que me dices de mi propuesta? Llevar una estructura que registre la distribución de pintado.
Yo para ahorrar espacio decía algo como:
HastaRegistro - Color
1 - Blanco
6 - Negro
8 - Blanco
...
Alterando esa idea se puede concebir una estructura de igual tamaño que la cantidad de registros:
RegistroNro - Color
1 - Blanco
2 - Negro
3 - Negro
...
6 - Negro
7 - Blanco
8 - Blanco
La idea es armar esta estructura analizando los registros. Cuando tenemos esta estructura ya podemos pintar el DBGrid, fila a fila en base a la evaluación del RecNo y comparandolo con RegistroNro de la estructura.
Si el evento DrawColumnCell se levanta a sus ganas, entonces forzemosle a decir, mira... tu correspondes al registro x, por tanto tu color es z.
Me dirán que es un desperdicio de memoria pero no veo otra manera.
Saludos,
|