Gracias Agustín.
En Windows coloreaba las celdas al seleccionarlas de la siguiente manera:
Código Delphi
[-]
procedure TPrinci.grdTableroDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var Tablero:TTablero;
begin StringGridToTablero(Tablero);
ColTableroActual:=ACol;
RowTableroActual:=ARow;
with grdTablero, grdTablero.Canvas do
begin
if CeldaSeleccionada then
begin
Brush.Color:= clYellow; CeldaSeleccionada := False;
end
else
if Odd((ACol div 3) + (ARow div 3)) then
Brush.Color:= clAqua
else
Brush.Color:= clWhite;
if TableroGenerado[ACol, ARow] > 0 then
Font.Color:= clRed
else begin
if (TableroAyudado[ACol, ARow]=1) and
(Tablero[ACol, ARow]=TableroResuelto[ACol,ARow]) then Font.Color:= clBlue
else Font.Color:= clBlack;
end;
ExtTextOut(Handle,
(Rect.Left + Rect.Right - TextWidth(Cells[ACol,ARow])) div 2,
(Rect.Top + Rect.Bottom - TextHeight(Cells[ACol,ARow])) div 2,
ETO_CLIPPED or ETO_OPAQUE , @Rect, PChar(Cells[ACol,ARow]),
Length(Cells[ACol,ARow]),nil);
end; LMDStatusBar1.Panels[0].Text:='Columna = '+IntToStr(GrdTablero.Col+1)+' / Fila = '+IntToStr(GrdTablero.Row+1);
end;
Pero ahora en DX no sé como voy a hacerlo, pues unas propiedades del TStgringGrid las han cambiado de nombre, otras las han eliminado y hay otras nuevas.
Seguiré peleando.
Gracias por todo.
Saludos.