Ver Mensaje Individual
  #1  
Antiguo 15-02-2019
Sir16 Sir16 is offline
Registrado
 
Registrado: sep 2018
Posts: 8
Reputación: 0
Sir16 Va por buen camino
Control grafico StringGrid

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.
Imágenes Adjuntas
Tipo de Archivo: png imagen problema.PNG (5,6 KB, 16 visitas)
Responder Con Cita