Ver Mensaje Individual
  #16  
Antiguo 23-07-2005
Avatar de Crandel
[Crandel] Crandel is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Parana, Argentina
Posts: 1.475
Reputación: 25
Crandel Va por buen camino
Hola sakuragi,

perdona que me una tan tarde al hilo, pero aca te doy una idea de como resolver el problema con DBGrid.

Es un código en C++Builder, si te resulta dificil de traducirlo me avisas.

Lo que hace este código es dejar en blanco los espacios que cumplen una determinada condición, para que se vea una sola parte de la lista.

por ejemplo uno tiene:

Código:
Yo     casa  1
Yo     moto  1
Juan   casa  1
Juan   auto  1
te lo deja
Código:
Yo     casa  1
       moto  1
Juan   casa  1
       auto  1
Código:
void __fastcall TFMain::GridCargosDrawColumnCell(TObject *Sender,
      const TRect &Rect, int DataCol, TColumn *Column, TGridDrawState State)
{
  if (!ModulePersonal->IBCargosOrdenados->IsEmpty())
  {
    int Fila = ModulePersonal->IBCargosOrdenados->RecNo-1;
    if (Fila > 0)
      if ((ModulePersonal->ArrayCargos[Fila] == ModulePersonal->ArrayCargos[Fila-1]) &&
          (Column->FieldName != "TIPO_ACTIVIDAD") &&
          (Column->FieldName != "DENOMINACION_ACTIV"))
        GridCargos->Canvas->Font->Color = GridCargos->Canvas->Brush->Color;
    }

  GridCargos->DefaultDrawColumnCell(Rect, DataCol, Column, State);
}
puedes adaptarlo a tu gusto
__________________
[Crandel]
Responder Con Cita