MSFlexGrid de Visual Basic

klowlead Mensajes publicados 11 Estado Miembro -  
wokerm Mensajes publicados 45 Estado Miembro -
Hola a todos (y todas)

¿Alguien podría explicarme cómo funciona un Flexgrid? Sé que puedo hacer cosas con las propiedades Row, Col y Text, pero no sé cómo utilizarlas y no conozco la sintaxis.
Me gustaría dar títulos a mis columnas y alimentar cada fila de la cuadrícula con registros de una tabla (con recordset).
Si alguien pudiera darme algunos trucos, se lo agradecería. Estoy trabajando en VB6.
Gracias.

5 respuestas

Mayno
 
Hola a todos

tengo un MSFlexGrid lleno de resultados de búsqueda de una base de datos, ¿hay alguien que me pueda decir el método para calcular el número de resultados que se muestran en el MSFlexGrid?

gracias a todos
2
Tana
 
MSFlexGrid.Rows calcula el número de filas
si quieres calcular la suma de los datos de la primera columna de tu MSFlexGrid
for i=1 to MSFlexGrid.Rows-1
cel=MSFlexGrid.matrix(i,0)
s=s+cel
next

entonces s contiene la suma.
0
rudy
 
Hola klowlead,

Quizás esta sea una primera aproximación a tu pregunta:
en la forma en que has colocado tu MsFlexGrid, con un clic derecho sobre ella, define en las propiedades: el número de filas y el número de columnas. Coloca 1 en la zona "Fixed row".
Esta fila fija te servirá más tarde para indicar los encabezados de columna. Para alimentar tus encabezados:

.MaGrid.Clear
.MaGrid.Rows = 1
.MaGrid.Row = .GridAgents.Rows - 1
MaGrid.Col = 0: MaGrid.ColWidth(0) = 2000: MaGrid = "Nombre"
MaGrid.Col = 1: MaGrid.ColWidth(1) = 2000: MaGrid= "Apellido"
MaGrid.Col = 2: MaGrid.ColWidth(2) = 900: MaGrid = "Fecha nac."
MaGrid.Col = 3: MaGrid.ColWidth(3) = 1000: MaGrid = "Empleador"
MaGrid.Col = 4: MaGrid.ColWidth(4) = 1100: MaGrid = "Num. médico"
MaGrid.Col = 5: MaGrid.ColWidth(5) = 3000: MaGrid= "Localidad"

.......

Luego creas tu orden SQL que te permite buscar las zonas que necesitas para mostrar en tu grid.

If Not EOF Then

Do Until EOF
.MaGrid.Rows = .MaGrid.Rows + 1
.MaGrid.Row = .MaGrid.Rows - 1
MaGrid.Col = 0: MaForme.MaGrid = zona archivo (proveniente de SQL)
MaGrid.Col = 1: MaForme.MaGrid = zona archivo

......

MoveNext
Loop
End If

Ahí tienes, intenta primero con estas pequeñas notas (que espero sean lo suficientemente claras).

Buena suerte,

Rudy.
1
klowlead
 
Hola Rudy, gracias por tu respuesta, encontré lo que quería hacer mientras tanto. Aquí hay una parte del código que hice para mi aplicación por si puede ayudar a alguien:


Private Sub Form_Load()

MSFlexGrid1.Cols = 4
MSFlexGrid1.FixedCols = 0

rsSession.MoveFirst

MSFlexGrid1.ColWidth(0) = 1500
MSFlexGrid1.ColWidth(1) = 1500
MSFlexGrid1.ColWidth(2) = 1700
MSFlexGrid1.ColWidth(3) = 1500


MSFlexGrid1.Row = 0
MSFlexGrid1.Text = "Código de sesión"
MSFlexGrid1.Col = 1
MSFlexGrid1.Row = 0
MSFlexGrid1.Text = "Código de etapa"
MSFlexGrid1.Col = 2
MSFlexGrid1.Row = 0
MSFlexGrid1.Text = "Fecha de sesión"
MSFlexGrid1.Col = 3
MSFlexGrid1.Row = 0
MSFlexGrid1.Text = "Animador"


Do Until rsSession.EOF

MSFlexGrid1.AddItem rsSession("CodeSession") & Chr(9) & rsSession("CodeStage") & Chr(9) & rsSession("DateSession") & Chr(9) & rsSession("NumAnim")
rsSession.MoveNext

Loop


End Sub
0
rudy > klowlead
 
Está bien

Todo lo que bien acaba, bien está...
0
titi311 > klowlead
 
Hola
he ejecutado tu código principal y tengo un error en la línea
Do Until rsSession.EOF

MSFlexGrid1.AddItem rsSession("CodeSession") & Chr(9) & rsSession("CodeStage") & Chr(9) & rsSession("DateSession") & Chr(9) & rsSession("NumAnim")
rsSession.MoveNext

Loop
ayúdame por favor, realmente lo necesito
0
brahimhakkou Mensajes publicados 1 Fecha de registro   Estado Miembro
 
Hola,

tengo un MSFlexGrid y lo lleno con un ListBox donde asigno mis datos
tengo un problema, quiero saber si es posible registrar los elementos de un MSFlexGrid en una base de datos con el evento de un botón, por ejemplo. Ya he intentado, pero no funciona. No sé si es posible o no ????
Gracias
0
ibouko
 
Hola, me gustaría recibir ayuda con mi msflexgrid. Quiero que después de ingresar en una celda y presionar enter, el puntero se coloque automáticamente en la siguiente fila.
0
wokerm Mensajes publicados 45 Estado Miembro 1
 
en lo que a mí respecta, procedo de la siguiente manera
supongamos que tengo una tabla de 05 columnas y 04 filas
los títulos de las columnas deben contener los siguientes valores
Matemáticas, física, ciencias, química
para llenar la primera fila a partir de la segunda celda
.col=1
.row=0
.colsel=4
.row=0
.clip="Matemáticas" & vbtab & "física" & vbtab & "ciencias" & vbtab & "química"
para llenar los títulos de la primera columna
.col=0
.row=1
.col=0
.row=3
.clip="mohamed" & vbcr & "magali" & vbcr & "ludi"
0