![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
|
Cambiar el color de las celdas seleccionadas de un DrawGrid
Hola a Todos. ¿Cómo puedo cambiar el color de fondo (background) de las celdas seleccionadas de un DrawGrid?. El azul que sale por defecto coincide prácticamente con el color de fuente que utilizo. Muchas Gracias.
|
|
#2
|
||||
|
||||
|
Hola chinchan.
Un ejemplo con un StringGrid: Código:
void __fastcall TForm1::StringGrid1DrawCell(TObject *Sender, int ACol,
int ARow, TRect &Rect, TGridDrawState State)
{
if (State.Contains(gdFocused)) {
StringGrid1->Canvas->Brush->Color = clRed;
StringGrid1->Canvas->FillRect(Rect);
StringGrid1->Canvas->Font->Color = clYellow;
DrawText(StringGrid1->Canvas->Handle,StringGrid1->Cells[ACol][ARow].c_str(),
StringGrid1->Cells[ACol][ARow].Length(),&Rect,
DT_NOCLIP | DT_SINGLELINE);
}
}
Saludos.
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 15-09-2011 a las 19:24:53. |
|
#3
|
||||
|
||||
|
Cita:
Cita:
El ejemplo de ecfisa es muy bueno pero si cambiamos gdFocused por gdSelected conseguimos lo que quiere chinchan .Por otro lado, yo prefiero usar Sender para referirme al objeto Grid correspondiente, así la misma función puede responder a eventos de distintos Grids... Son manías mías ![]() Propongo esta variante: Código:
void __fastcall TForm1::StringGrid1DrawCell(TObject *Sender, int ACol,
int ARow, TRect &Rect, TGridDrawState State)
{
TStringGrid * Grid = dynamic_cast<TStringGrid*>(Sender);
if (State.Contains(gdSelected) && Grid) {
Grid->Canvas->Brush->Color = clRed;
Grid->Canvas->FillRect(Rect);
Grid->Canvas->Font->Color = clYellow;
DrawText(Grid->Canvas->Handle, Grid->Cells[ACol][ARow].c_str(),
Grid->Cells[ACol][ARow].Length(), &Rect,
DT_NOCLIP | DT_SINGLELINE);
}
}
|
|
#4
|
|||
|
|||
|
Sabía que me ibais a solucinar el problema. Genial. Muchas Gracias (otra vez).
|
![]() |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Celdas seleccionadas en un DrawGrid | chinchan | C++ Builder | 6 | 02-09-2011 03:49:33 |
| leer celdas de un DrawGrid | byfali | Varios | 2 | 15-02-2009 23:37:31 |
| Varias celdas seleccionadas en un DrawGrid | eljose | OOP | 0 | 24-09-2007 20:33:47 |
| Color de las lineas de las celdas de un StringGrid | richi | OOP | 4 | 23-08-2006 20:26:56 |
| Color de fondo en celdas de Excel | acalderonr | Servers | 2 | 16-05-2003 03:38:31 |
|