Buenas compañeros, me encuentro que tengo un stringGrid en el que lo hago mas ancho de la siguiente forma :
Código Delphi
[-]
Procedure AmpliarRow;
begin
StringGrid1.RowHeights[1] := StringGrid1.RowHeights[1] + 10;
end;
procedure Form1.StringGrid1.DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
var texto :string;
indice,posicion:integer;
begin
if Pos(#13,StringGrid1..Cells[Acol,Arow])<>0 then
begin
texto:= StringGrid1..Cells[Acol,Arow]+#13;
StringGrid1.Canvas.FillRect(Rect);
indice:= 0;
repeat
posicion := pos(#13,texto);
with StringGrid1.Canvas do
textout(rect.Left,rect.Top+(indice*(textHeight(copy(texto,1,posicion-1))+5)),copy(Texto,1,posicion-1));
inc(indice);
delete(texto,1,posicion);
until posicion = 0;
end;
end;
El problema lo tengo que al seleccionar una de estas lineas, en la que lo tengo particionado, me sale el texto en medio sin la separación como si fuera un hint. Adjunto imagen del problema.
He encontrado que si cambio el DrawingStyle de gsdThemed a gsdClassic el problema me desaparece, pero no es tan atractivo visualmente.
Alguna recomendación de como controlar esto para que no me salga o quede igual que con el modo del drawcell.
Gracias de antemano.
PD. Trabajo con Delphi en entorno de desarrollo versión Berlin.