Ver Mensaje Individual
  #3 (permalink)  
Antiguo 21/10/2010, 20:41
pelayerico
 
Fecha de Ingreso: octubre-2010
Mensajes: 3
Antigüedad: 14 años, 2 meses
Puntos: 0
Respuesta: como llenar una msflexgrid por medio de textbox

Cita:
Iniciado por erbuson Ver Mensaje
Hola, nunca había utilizado la función AddItem con el MsFlexgrid, pero está claro que funciona, lo unico que pasa es que la misma palabra lo dice: Add (Añadir)

El problema que tienes es que según como tengas definido el grid en diseño tendrá mas o menos filas y te añade al final, por tanto la opción AddItem no es nada práctica.

Si quieres puedes utilizar una esta rutina:

Código vb:
Ver original
  1. Private Sub AddGrid(Grid As MSFlexGrid, Fila As Single, Columna As Single, Texto As String)
  2.   ' Comprobamos si la fila existe, si no la añadimos.
  3.  If Grid.Rows - 1 < Fila Then Grid.Rows = Fila + 1
  4.   ' Comprobamos si la columna existe, si no la añadimos.
  5.  If Grid.Cols - 1 < Columna Then Grid.Cols = Columna + 1
  6.   ' Pasamos el dato al Grid
  7.  Grid.TextMatrix(Fila, Columna) = Texto
  8. End Sub

La llamada a la misma es muy simple, te pongo un ejemplo

AddGrid grd, 5, 0, Text1
AddGrid grd, 5, 1, Text2
AddGrid grd, 5, 2, Text3
AddGrid grd, 5, 3, Text3

Cualquier duda comenta y lo aclaramos

Saludos

Gracias por responderme. Hice lo que me dijiste pero encontre 1 detalles que paso a describir;

1° Es que al agregar otro dato a la grilla, esta sobreescribe en la fila en donde agregue el primer dato.

Este es el codigo:

Private Sub cmd_agre_Click()


AddGrid grd, 1, 0, Text1
AddGrid grd, 1, 1, Text2
AddGrid grd, 1, 2, Text3
AddGrid grd, 1, 3, Text4
AddGrid grd, 1, 4, Text5

end sub

Private Sub AddGrid(Grid As MSFlexGrid, Fila As Single, Columna As Single, Texto As String)

'Comprobamos si la fila existe, si no la añadimos.
If Grid.Rows - 1 < Fila Then Grid.Rows = Fila + 1

' Comprobamos si la columna existe, si no la añadimos.
If Grid.Cols - 1 < Columna Then Grid.Cols = Columna + 1
' Pasamos el dato al Grid

Grid.TextMatrix(Fila, Columna) = Texto

end sub