Ver Mensaje Individual
  #2  
Antiguo 10-09-2018
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Entiendo que deseas desplazar horizontalmente parte de una columna, cuyo largo total, es mayor al del componente.

El TStringGrid realiza el scroll horizontal por columnas, de modo que si tu columna tiene un ancho mayor que el área de visualización, esta inevitablemente desaparecerá para dar paso a las siguientes al realizar un scroll horizontal .

Una opción, si necesitas mostrar todo el texto, es ser incrementar el alto de la fila y escribir el contenido en mas de un renglón, por ejemplo:
Código Delphi [-]
...
implementation

const
  LONGTEXT = 'Hola' + #10 +'Tengo un stringgrid con varias columnas, ' +
  'en una de las cuales cargo un texto bastante largo, ' +
  'pero que no puedo ver completo. Si uso el scroll, ' +
  'éste se mueve desde el tope de la izquierda al de la ' +
  'derecha rápidamente y el scroll de la informacion es mínimo.' + #10 + '...';

procedure TForm1.FormCreate(Sender: TObject);
var 
  sg: TStringGrid;
  i : Integer;
begin
  sg := StringGrid1;
  sg.DefaultRowHeight := 65;
  sg.ColWidths[0] := 430;
  for i := 0 to sg.RowCount - 1 do
  begin
    sg.Cells[0,i] := LONGTEXT;
    sg.Cells[1,i] := 'Columna 1';
    sg.Cells[2,i] := 'Columna 2';
  end;
end;

procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
  Rect: TRect; State: TGridDrawState);
var
  sg    : TStringGrid;
  Texto : string;
begin
  sg := TStringGrid(Sender);
  sg.Canvas.FillRect(Rect);
  Texto := sg.Cells[ACol,ARow] + ' ';
  DrawText(sg.Canvas.Handle, PChar(Texto), Length(Texto), Rect, DT_WORDBREAK);
end;
...

Resultado:


Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita