Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 14-08-2008
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.449
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Échale un vistazo a mi página web. En la sección de ejemplos hay uno sobre StringGrid; No es expreso de pintar celdas, pero incluye el código para hacerlo.

Descargalo y échale un vistazo.
__________________
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.
Responder Con Cita
  #2  
Antiguo 14-08-2008
Avatar de Caro
*Caro* Caro is offline
Moderadora
 
Registrado: jul 2004
Ubicación: Cochabamba, Bolivia
Posts: 2.544
Poder: 25
Caro Va por buen camino
Hola Nomad, tu dices que quieres pintar una celda de acuerdo al valor que escriba en dicha celda, entonces debes preguntar dentro del evento OnDrawCell directamente por ese valor y dependiendo del balor pintas, ejemplo

Si se escrito un 1 en la celda, se pinta de rojo y se pone en negrita.
Código Delphi [-]
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
begin
 if (StringGrid1.Cells[ACol,ARow]='1') and (ACol=4) then
  begin
   //Pintamos la celda de rojo
   StringGrid1.Canvas.Brush.Color := clRed;
   StringGrid1.Canvas.FillRect(Rect);
 
   //ponemos en negrita el texto
   StringGrid1.Canvas.Font.Style := [fsBold];
   DrawText(StringGrid1.Canvas.Handle,PChar(StringGrid1.Cells[Acol,ARow]),-1, Rect, DT_LEFT);
  end;
end;

Saluditos
__________________
Disfruten cada minuto de su vida a lado de sus seres queridos como si fuese el ultimo, uno nunca sabe lo que puede pasar.
Responder Con Cita
  #3  
Antiguo 14-08-2008
Avatar de Nomad
Nomad Nomad is offline
Miembro
 
Registrado: abr 2007
Ubicación: Sarchi,Costa Rica
Posts: 107
Poder: 20
Nomad Va por buen camino
Cool problem

Ese es el problema, que ese valor no es el mismo siempre, ni se en cual celda cayó, asi que por lo tanto es dificil saber porque debe preguntar.
__________________
Quisiera cambiar el mundo, pero no me dan el código fuente.
Responder Con Cita
  #4  
Antiguo 14-08-2008
Avatar de seoane
[seoane] seoane is offline
Miembro Premium
 
Registrado: feb 2004
Ubicación: A Coruña, España
Posts: 3.717
Poder: 26
seoane Va por buen camino
Se me ocurre que utilices la propiedad Objects del TStringGrid. Asi cuando asignes la propiedad Cells, tambies asignas la propiedad Objects.

Por ejemplo:
Código Delphi [-]
// Si queremos pintarla
GrDetalle.Objects[col+2,memfila] := Pointer(1);
// Y si no quieres pintarlas
GrDetalle.Objects[col+2,memfila] := Pointer(0);

GrDetalle.Cells[col+2,memfila] := IntToStr(Suma);

Luego en el evento OnDrawCell comprueba la propiedad Object de esa celda:
Código Delphi [-]
if  GrDetalle.Objects[ACol,ARow] = Pointer(1)  then
  begin
    Font.Style := [fsBold];     // negrita
  end;
Responder Con Cita
Respuesta


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
Pintar celda de un StringGrid huevozen C++ Builder 1 31-08-2006 17:00:19
pintar una celda... eli.vidal Impresión 1 14-11-2005 16:31:27
pintar una celda... eli.vidal Gráficos 1 14-11-2005 16:30:49
Como Pintar Solo la Celda y No Toda la Columna de la Celda de un dbGrid?? AGAG4 Varios 11 15-11-2004 20:53:28
Imagen en celda especifica de Grilla mosorio OOP 4 02-06-2003 11:57:11


La franja horaria es GMT +2. Ahora son las 07:12:09.


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