Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #6  
Antiguo 06-08-2014
Avatar de aguml
aguml aguml is offline
Miembro
 
Registrado: may 2013
Posts: 885
Poder: 14
aguml Va por buen camino
Lo he probado y he tenido que modificarlo un poco ya que mi codigo tambien fue modificado un poco para hacer lo que yo queria realmente. Asi ha quedado pero tiene un problemilla:

Código:
void __fastcall TFormRanking::StringGridRankingDrawCell(TObject *Sender, int ACol,
      int ARow, TRect &Rect, TGridDrawState State)
{
  TStringGrid *SG = static_cast<TStringGrid*>((TStringGrid*)(Sender));
  String cad = SG->Cells[ACol][ARow];
  HDC dc = StringGridRanking->Canvas->Handle;
  register int Flags = (ACol == 1 || State.Contains(gdFixed) ? DT_CENTER | DT_VCENTER | DT_SINGLELINE :
                        DT_RIGHT | DT_VCENTER | DT_SINGLELINE);

  cad += (ACol != 1 && ARow > 0 ? " " : "");
  if (State.Contains(gdFixed)) {
    SG->Canvas->Brush->Color = clBtnFace;
    SG->Canvas->Font->Color = clWindowText;
    SG->Canvas->FillRect(Rect);
    DrawText(dc, cad.c_str(), cad.Length(), &Rect, Flags);
  }
  else if(State.Contains(gdSelected)) {
    SG->Canvas->Brush->Color = clWindow;
    SG->Canvas->Font->Color = clWindowText;
    SG->Canvas->FillRect(Rect);
    HDC dc = StringGridRanking->Canvas->Handle; //No se porque pero si no pongo esta linea no aparece el texto de la celda seleccionada
    DrawText(dc, cad.c_str(), cad.Length(), &Rect, Flags );
  }
  else {
    if (ARow % 2 == 0){
      SG->Canvas->Brush->Color = clSilver;
      SG->Canvas->Font->Color = clWindowText;
    }
    else {
      SG->Canvas->Brush->Color = SG->Color;
      SG->Canvas->Font->Color = SG->Font->Color;
    }
    SG->Canvas->FillRect(Rect);
    DrawText(dc, cad.c_str(), cad.Length(), &Rect, Flags );
  }
}
Ahi tienes el comentario de que tengo que hacer para que funcione y es algo raro ya que eso mismo se hace al principio pero no se porque tengo que volverlo a hacer.
Responder Con Cita
 


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 por defecto al seleccionar varias celdas de un TStringGrid JAI_ME Varios 1 05-08-2012 18:58:19
Centrar celdas en un TSTringGrid gluglu Varios 3 23-01-2005 13:41:44
colorear las celdas de un TstringGrid mangel OOP 2 16-12-2003 17:22:47
Celdas de colores diferentes en un TStringGrid phyera Gráficos 2 14-09-2003 19:06:26
Justificar Texto en las celdas del TStringGrid Anabel Varios 3 19-05-2003 18:20:47


La franja horaria es GMT +2. Ahora son las 19:06:20.


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