Ver Mensaje Individual
  #3 (permalink)  
Antiguo 01/02/2008, 15:26
rishart
 
Fecha de Ingreso: enero-2008
Mensajes: 181
Antigüedad: 17 años, 4 meses
Puntos: 1
De acuerdo Re: Ayuda Con Flexgrid

Cita:
Iniciado por Avellaneda Ver Mensaje
Para escribir en el FlexGrid hay varios métodos, uno podría ser este utilizando los eventos KeyPress y KeyDown del Grid:


Código:
Private Sub MSFlexGrid1_KeyPress(KeyAscii As Integer)
' solo caracteres imprimibles
If KeyAscii >= 32 And KeyAscii <= 127 Then MSFlexGrid1.Text = MSFlexGrid1.Text & Chr(KeyAscii)
End Sub

Private Sub MSFlexGrid1_KeyDown(KeyCode As Integer, Shift As Integer)
With MSFlexGrid1
    Select Case KeyCode
    Case vbKeyDelete    ' Tecla <Supr> borramos toda la celda
        .Text = ""
   Case vbKeyBack      ' Tecla < Retroceso> borramos el último caracter
        If Len(.Text) > 0 Then .Text = Left(.Text, Len(.Text) - 1)
    Case vbKeyTab, vbKeyReturn ' Teclas <Tab> o <Intro>
        If .Col = .Cols - 1 Then  ' si es la última columna:
            ' si además en la última fila, añadimos una nueva
            If .Row = .Rows - 1 Then .Rows = .Rows + 1
            ' nos posicionamos en la primera celda de la fila siguiente
            .Row = .Row + 1
            .Col = .FixedCols
            .LeftCol = .FixedCols
        Else    ' si no, pasamos a la siguiente columna de la misma fila
            .Col = .Col + 1
        End If
    End Select
End With
End Sub
y para imprimirlo, básicamente sería así:

Código:
Private Sub cmdImprimir_Click()
Dim iFila, iCol As Integer
For iFila = 1 To MSFlexGrid1.Rows - 1
    For iCol = 1 To MSFlexGrid1.Cols - 1
        Printer.Print MSFlexGrid1.TextMatrix(iFila, iCol) & Space(5);
    Next iCol
    ' nueva línea
    Printer.Print ""
Next iFila
Printer.EndDoc
End Sub
Esto se puede mejorar bastante, sólo puse lo básico.

Espero que te sea de ayuda.



Muchas gracias avellaneda, disculpa la molestia pero el codigo de modificar el flexgrid funciona perfectamente pero la cosa es que con ese codigo no me guarda los cambios que hice en el grid en mi base de datos como le puedo hacer, ademas el codigo de imprimir donde pueso conseguir mas imformacion del mismo ya que quiero imprimir un form que contiene el flexgrid pero tambien tiene texts e imagenes y todo lo quiero imprimir en una hoja como le puedo hacer o donde me informo de todo esto... te lo agradeceria muchisimo o alguien pudiese ayudarme!!!!
gracias.... saludos