https://foro.gambas-es.org/viewtopic.php?f=4&t=2006
-----------------------------------
Haseo
Jueves, 03 Noviembre 2011, 18:33

Duda Sobre Grilla Y Tabla
-----------------------------------
Hola a todos, vuelvo con una duda sobre las grillas y las tablas, bueno les cuento lo que quiero hacer.
Quiero mostrar en una fila de una grilla o tabla lo que escribo en un textArea, pero si escribo hacia abajo, en la fila no se ve bien solamente el encabezado del texArea, y aqui la duda, ¿hay alguna forma en la cual pueda mostrar bien lo que escribo en el texArea?


-----------------------------------
jguardon
Jueves, 03 Noviembre 2011, 20:18

Re: Duda Sobre Grilla Y Tabla
-----------------------------------
Supongo que te refieres a que cuando hay mucho texto, éste no se ve completo en la celda de la "grilla" o gridview, porque la altura de las filas es insuficiente. Creo recordar que las filas tienen una propiedad "height" para determinar su altura y "Width" para la anchura. Si tu grilla se llama por ejemplo Gridview1, sería algo como:

[code linenumbers=false syntax=gambas]
Gridview1.Rows[2].Height = 30
Gridview1.Columns[0].Widht = 200

[/code]

que pondría la tercera fila con una altura de 30 pixels y la primera columna con una anchura de 200. 

Saludos


-----------------------------------
jsbsan
Jueves, 03 Noviembre 2011, 20:20

Re: Duda Sobre Grilla Y Tabla
-----------------------------------
[quote]¿hay alguna forma en la cual pueda mostrar bien lo que escribo en el texArea?[/quote]

Lo que entiendo, es que, quieres que a medida que vayas escribiendo en un textArea, incluso cuando introduzcas un salto de linea, se modifique el ancho de la fila del gridviews, para que se vea el texto completo en una celda ¿no?

Bueno, puedes emplear la propiedad height, de la fila donde estes metiendo el texto. 

Te paso el código de ejemplo:
Tienes que crear un Gridview , un boton y un textArea

[code linenumbers=false syntax=gambas]' Gambas class file

PUBLIC SUB _new()

END

PUBLIC SUB Form_Open()
Titulos_Gridview1()
END
PUBLIC SUB Titulos_Gridview1() 
   WITH Gridview1
      .header = 3 
      .rows.count = 4 
      .columns.count = 3 
      .Columns[0].title = "Columna 1" 
      .Columns[1].title = "Columna 2" 
      .Columns[2].title = "Columna 3" 
      .Columns[0].width = 608 
      .Columns[1].width = 80 
      .Columns[2].width = 80 
      .font.name = "Sans" 
      .font.size = 10 
      .Background = 16777215 
      .Foreground = 0 
   END WITH 
END

PUBLIC SUB Button1_Click()
'meto el texto en la celda A1 (por ejemplo)
   Gridview1[0, 0].text = TextArea1.text
   Gridview1.rows[0].Height = 24 * contarSaltosdeLineas(TextArea1.text)
END

'subrrutina para contar los saltos de linea que hay en un texto
SUB contarSaltosdeLineas(texto AS String) AS Integer
  DIM lineas_texto AS String[]
  lineas_texto = Split(texto, "\n")
  RETURN lineas_texto.count
END

'cada vez que presionas una tecla va escribiendo y "redimensiona el ancho de la fila"
PUBLIC SUB TextArea1_KeyPress()
 Button1_Click()
END
[/code]

[url=http://www.imagengratis.org/?v=anchofilaadap.png][img]http://www.imagengratis.org/thumbs/anchofilaadap.png[/img]


-----------------------------------
Haseo
Jueves, 03 Noviembre 2011, 21:03

Re: Duda Sobre Grilla Y Tabla
-----------------------------------
Gracias por las respuestas, pero me falto agregar, quisas me sirva sus respuestas, es que esos textos los sacos desde una tabla de base de datos.


-----------------------------------
Haseo
Viernes, 04 Noviembre 2011, 04:57

Re: Duda Sobre Grilla Y Tabla
-----------------------------------
Creo que ya lo solucione, pero no se me ve muy bien a mi manera, pero algo es algo  :mryellow: 
Gracias a la ayuda de jguardon

[code linenumbers=false syntax=gambas]Gridview1.Rows[2].Height = 30
Gridview1.Columns[0].Widht = 200[/code]

lo solucione de esta manera

http://imageshack.us/photo/my-images/408/pantallazodel2011110400.png/

[code linenumbers=false syntax=gambas]DIM res AS Result
DIM i AS Integer
DIM cantidad AS Integer
DIM texto AS String[]

 cantidad = TextBox2.Text
 
res = conexion.$Con.Exec("SELECT * FROM comentario ORDER BY rand() LIMIT " & cantidad & "")
 

  GridView1.Clear 'Borro los datos del tableview
    GridView1.Rows.Count = res.Count 'Agrego las filas que utilizare

  FOR i = 0 TO (res.Count - 1) ' Ciclo para llenar el tableview

Gridview1.Rows[i].Height = 108

    GridView1[i, 0].Text = res["id_comentario"] & "b" & "v"
    GridView1[i, 1].Text = res["comentario"]

    res.MoveNext 
  NEXT 
  conexion.$Con.Close 'Cierro la conexión[/code]


