Jump to content


Photo

Ancho de UNA columna de TStringGrid de acuerdo a un texto.


  • Please log in to reply
2 replies to this topic

#1 TiammatMX

TiammatMX

    Advanced Member

  • Miembros
  • PipPipPip
  • 1750 posts
  • LocationUniverso Curvo\Vía Láctea\Sistema Solar\Planeta Tierra\América\México\Ciudad de México\Xochimilco\San Gregorio Atlapulco\Home

Posted 31 August 2012 - 09:46 AM

Jóvenes delphineros:

Me encuentro con que estoy rellenando una columna de un TStringGrid con un texto de ésta forma:



delphi
  1. .
  2. .
  3. .
  4.  
  5.         Open;
  6.         while not Eof do
  7.         begin
  8.             Cells[0,iIndiceRen] := Trim(FieldByName('C93_DIETA_STR').AsString);
  9.             RowCount := RowCount + 1;
  10.             iIndiceRen := RowCount - 1;
  11.             Next;
  12.         end;
  13. .
  14. .
  15. .



Lo cual está perfectamente correcto. Al mostrar el TStringGrid en mi forma (imagen adjunta) algunos textos de la primera columna aparecen "cortados" y otros "montados".

¿De qué manera podría darle a la columna extrema izquierda un tamaño suficiente para mostrar EL TEXTO MÁS LARGO por programación?

Por su atención y ayuda, de antemano, gracias.

Attached Files


  • 0

#2 escafandra

escafandra

    Advanced Member

  • Administrador
  • 4107 posts
  • LocationMadrid - España

Posted 31 August 2012 - 11:26 AM

La API GetTextExtentPoint32 te da la altura y longitud de un texto. Sabiendo esto, o ajustas el tamaño de la columna cada vez que tienes un texto mas largo que los anteriores o analizas las longitudes antes de dar el ancho de columna.


Saludos.
  • 0

#3 cadetill

cadetill

    Advanced Member

  • Moderadores
  • PipPipPip
  • 994 posts
  • LocationEspaña

Posted 31 August 2012 - 03:32 PM

Gracias escafandra, buscaba ésto para una cosa que tengo en mente. Ahora ya no tengo que buscar jejejeje

  • 0




IP.Board spam blocked by CleanTalk.