• Domingo 28 de Abril de 2024, 21:00

Autor Tema:  Ayuda Con Stringgrid  (Leído 1892 veces)

Linspire

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
    • http://www.cedrela.com.mx
Ayuda Con Stringgrid
« en: Miércoles 8 de Marzo de 2006, 05:36 »
0
Hola, alguien podría decirme como ajustar la longitud de las celdas de un TStringGrid a la longitud del texto que haya en las celdas?. me desvelé tratando de hacerlo y no pude.

De antemano gracias por las respuestas.
[size=109]My Blog de Programación[/i][/b][/size]
´


[size=109]Tan solo quiero pensar que todo es un sueño y que no quiero despertar
porque quiero controlarlo como yo quiera.
[/size]

Todo es posible, lo imposible solo cuesta un poco más. Dan Drown.

juanma

  • Nuevo Miembro
  • *
  • Mensajes: 19
    • Ver Perfil
Re: Ayuda Con Stringgrid
« Respuesta #1 en: Miércoles 8 de Marzo de 2006, 14:51 »
0
Te escribo sin probar el código...
Una vez asignados los string a las celdillas del stringgrid, ejecuta algo similar a:
Código: Text
  1.  
  2. (nC = columna a ajustar, si son todas, meter esto dentro de un bucle por columnas)
  3. int nW, nr =0, nMax = 0;
  4. while (nr < sg->RowCount) {
  5.  nW = sg->Canvas->TextWidth(sg->Cells[nC][nr]);
  6.  if (nW > nMax)
  7.     nMax = nW;
  8.   nr++; //por claridad, lo puedes quitar aqui y poner en [nr++] arriba.
  9.   }
  10.  
  11. sg->ColWidths[nC] = nMx;
  12. //...
  13.  
  14.  

Linspire

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
    • http://www.cedrela.com.mx
Re: Ayuda Con Stringgrid
« Respuesta #2 en: Miércoles 8 de Marzo de 2006, 15:59 »
0
Gracias, lo probaré y te respondo más tarde si me funcionó.
[size=109]My Blog de Programación[/i][/b][/size]
´


[size=109]Tan solo quiero pensar que todo es un sueño y que no quiero despertar
porque quiero controlarlo como yo quiera.
[/size]

Todo es posible, lo imposible solo cuesta un poco más. Dan Drown.

Linspire

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
    • http://www.cedrela.com.mx
Re: Ayuda Con Stringgrid
« Respuesta #3 en: Viernes 10 de Marzo de 2006, 00:49 »
0
Joder, pues no entendí nada de tu código y menos en donde se programa, podrías comentarlo?
[size=109]My Blog de Programación[/i][/b][/size]
´


[size=109]Tan solo quiero pensar que todo es un sueño y que no quiero despertar
porque quiero controlarlo como yo quiera.
[/size]

Todo es posible, lo imposible solo cuesta un poco más. Dan Drown.

TRod

  • Miembro MUY activo
  • ***
  • Mensajes: 108
  • Nacionalidad: mx
    • Ver Perfil
Re: Ayuda Con Stringgrid
« Respuesta #4 en: Viernes 10 de Marzo de 2006, 05:23 »
0
Hola todos.
El método TextWidth que escribió juanma te esta indicando el número de pixeles de una cadena. Con esto ya tienes resuelto casi todo el problema.
Podrías implementarlo en el evento OnSetEditText(). Pero claro esta que en las otras filas puedes tener un texto más largo... y entonces de ahi partes para resolver como se va a actualizar el ancho de la columna de acuerdo a tus necesidades.
La clave es  :alien: TextWidth :alien: .
Suerte! :hola:

Linspire

  • Miembro MUY activo
  • ***
  • Mensajes: 232
    • Ver Perfil
    • http://www.cedrela.com.mx
Re: Ayuda Con Stringgrid
« Respuesta #5 en: Viernes 10 de Marzo de 2006, 05:58 »
0
Ah pues, perfecto, muchisimas gracias por tu ayuda. Así se entiende mucho mejor.
Gracias nuevamente.  :D  :comp:  :P
[size=109]My Blog de Programación[/i][/b][/size]
´


[size=109]Tan solo quiero pensar que todo es un sueño y que no quiero despertar
porque quiero controlarlo como yo quiera.
[/size]

Todo es posible, lo imposible solo cuesta un poco más. Dan Drown.