Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    MshFlexGrid

    Ciao a tutti avrei un problema con un controllo MshFlexGrid
    Dovrei caricare tre campi di una tabella ma me ne carica solamente uno nella prima collonna il codice è questo cosa c'è che nn va??
    Grazie ciao a tutti

    Dim oGrigliaRecordset As ADODB.Recordset
    Dim StrIngr As String
    Dim n As Integer



    Private Sub Form_Load()
    Set oGrigliaRecordset = New ADODB.Recordset

    StrGriglia = "SELECT * FROM t_desc_prodotti ORDER BY idprodotto "

    oGrigliaRecordset.Open StrGriglia, oConn

    MSHFlexGrid1.Cols = 4
    Do While Not oGrigliaRecordset.EOF
    If Not IsNull(oGrigliaRecordset.Fields(2).Value) Then
    MSHFlexGrid1.AddItem oGrigliaRecordset.Fields(2).Value
    End If
    oGrigliaRecordset.MoveNext
    Loop

    End Sub

  2. #2
    Utente di HTML.it L'avatar di MMarzia
    Registrato dal
    Mar 2001
    Messaggi
    1,781
    per VB c'è un apposito subforum: ti sposto lì

    quale versione utilizzi?
    sarebbe inoltre opportuno utilizzare titoli meno generici ed includere il codice nell'apposito tag [*CODE] ... [*/CODE] (senza asterischi), in modo da renerlo più leggibile
    io sono festosamente cicciottello :: e. cartman

    t'amo senza sapere come, nè quando nè da dove,
    t'amo direttamente senza problemi nè orgoglio:
    così ti amo perchè non so amare altrimenti

  3. #3
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514

    Re: MshFlexGrid

    Originariamente inviato da stefania_baby
    Ciao a tutti avrei un problema con un controllo MshFlexGrid
    Dovrei caricare tre campi di una tabella ma me ne carica solamente uno nella prima collonna il codice è questo cosa c'è che nn va??
    Grazie ciao a tutti

    Dim oGrigliaRecordset As ADODB.Recordset
    Dim StrIngr As String
    Dim n As Integer



    Private Sub Form_Load()
    Set oGrigliaRecordset = New ADODB.Recordset

    StrGriglia = "SELECT * FROM t_desc_prodotti ORDER BY idprodotto "

    oGrigliaRecordset.Open StrGriglia, oConn

    MSHFlexGrid1.Cols = 4
    Do While Not oGrigliaRecordset.EOF
    If Not IsNull(oGrigliaRecordset.Fields(2).Value) Then
    MSHFlexGrid1.AddItem oGrigliaRecordset.Fields(2).Value
    End If
    oGrigliaRecordset.MoveNext
    Loop

    End Sub
    se noti richiami solo il campo 3 cioè fileds(2)
    se non metti anche gli altri campi difficilmente compariranno
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  4. #4

    [vb 6]

    Anche scrivendo così mi carica entrambe i campi nella colonna 1 come è possibile assegnare un campo ad una colonna?

    codice:
    MSHFlexGrid1.Cols = 4
    Do While Not oGrigliaRecordset.EOF
            If Not IsNull(oGrigliaRecordset.Fields(1).Value) Then
                MSHFlexGrid1.Col = 1
                MSHFlexGrid1.AddItem oGrigliaRecordset.Fields(1).Value
            End If
            If Not IsNull(oGrigliaRecordset.Fields(2).Value) Then
                MSHFlexGrid1.Col = 2
                MSHFlexGrid1.AddItem oGrigliaRecordset.Fields(2).Value
            End If
              oGrigliaRecordset.MoveNext
    Loop

  5. #5
    Moderatore di Javascript L'avatar di ciro78
    Registrato dal
    Sep 2000
    residenza
    Napoli
    Messaggi
    8,514
    io faccio così

    codice:
    Do While Not record.EOF Or i = 20
    classifica.griglia.TextMatrix(i, 0) = record.Fields(1).Value
     classifica.griglia.TextMatrix(i, 1) = record.Fields(2).Value
    classifica.griglia.TextMatrix(i, 2) = record.Fields(3).Value
    classifica.griglia.TextMatrix(i, 3) = record.Fields(4).Value
    classifica.griglia.TextMatrix(i, 4) = record.Fields(5).Value
    ....................
    i = i + 1
    record.MoveNext
    Loop
    se hai dubbi posta
    Ciro Marotta - Programmatore JAVA - PHP
    Preferisco un fallimento alle mie condizioni che un successo alle condizioni altrui.


  6. #6
    Facendo così auando arriva al secondo campo mi da l'errore di indice non presente nell'intervallo, però i campi li restituisce corretti

    codice:
    Do While Not oGrigliaRecordset.EOF Or i = 2
        MSHFlexGrid1.TextMatrix(i, 0) = oGrigliaRecordset!idprodotto
        MSHFlexGrid1.TextMatrix(i, 1) = oGrigliaRecordset!idingrediente
        MSHFlexGrid1.TextMatrix(i, 2) = oGrigliaRecordset!nome
        MSHFlexGrid1.TextMatrix(i, 3) = oGrigliaRecordset!descrizione
        i = i + 1
        oGrigliaRecordset.MoveNext
    Loop

  7. #7
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,002
    hai visto se gli indici della tabella esistano tutti ???

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    19
    Ciao,
    Andava quasi bene quello che stavi facendo solo che non devi usare additem ma semplicemente :

    flxVoti.Row = 1
    flxVoti.Col = 0
    flxVoti = adodcClasse.Recordset!Alunno

    Buon lavoro

  9. #9
    Grazie ma io non utilizzo un controllo adodc quindi così come dici tu non funziona.
    grazie lo stesso

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2002
    Messaggi
    19
    Ciao, ma il tuo problema è riempire la griglia o recuperare i dati dal recordset?
    Perchè al posto del mio adodc puoi metterci qualsiasi cosa anche semplicemente = "pippo"
    Io ho usato questo metodo sia con adodc sia con DAO e ha sempre funzionato.
    Buona giornata

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.