Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    Vb6 - Agire con il datagrid

    Sarà la terza volta che lo scrivo, spero che stavolta creando un topic appposta per il problema verrò ascoltato.
    In pratica ho bisogno di interagire sul datagrid. Per esempio: se premo sulla prima colonna faccio succedere una cosa.
    Devo usare select case? Io non credo perchè non posso mai calcolare quanti saranno i record del datagrid...mi sapete aiutare specificatamente? Ad esempio
    Premendo sul primo nome si apre una finestra di riepilogo con tutti i suoi dati...
    Ancora una cosa.
    Il datagrid mi crea le tabelle in automatico, io invece vorrei crearle da solo e mettere i nomi che voglio io e assegnarli le relative colonne a mio piacimento. MI sapete aiutare?

  2. #2
    nell'evento rowcolchange puoi gestire il clic sulla griglia ...esempio
    ''''''''''''''''''''''''''''''''''''''''''
    Private Sub DataGrid1_RowColChange(LastRow As Variant, ByVal LastCol As Integer)


    MsgBox DataGrid1.Columns(0)

    End Sub
    '''''''''''''''''''''''''''''''''''''''''''''''''' '''''''''''''''''''
    cosi facendo ogni volta che clicco su una cella mi esce una msgbox con il contenuto della colonna(0).

    Boicottiamo la coca cola...
    http://www.tmcrew.org/killamulti/cocacola/

  3. #3

    Grazie

    Grazie per l'aiuto, davvero fondamentale, ma ovviamente ho un altro problema.
    Adesso io col mio database access 2000 ci sta una bella funzione recupera campi con la quale in teoria si dovrebbero compilare automaticamente i campi del datagrid.
    Non succede niente -.-
    Come datasource metto adodc3 e in adodc3 la recordsource è select * from magazzino...dove sbaglio??

  4. #4
    Ho risolto da solo quel problema ( avrei modificato il post se non fossero passati 60 minuti!)

  5. #5
    hai risolto? io avrei scritto cosi:

    codice:
    Datagrid1.datasource= adodc1.recordset
    Boicottiamo la coca cola...
    http://www.tmcrew.org/killamulti/cocacola/

  6. #6
    E' tutto ok. Ora però sorge ancora un altro problema
    Ho creato un form in cui quando uno preme su una riga di datagrid viene memorizzata la colonna 1.
    A questo punto uno può scegliere carica/scarica, inseirre la quantità e aggiornare il "magazzino", diciamo cosi
    Ho creato uno script cosi
    Text3.text sarebbe la quantità già presente in magazzno, la text4 è quella nuova da aggiungere o rimuovere
    codice:
    If Text3.Text Or Text4.Text = "" Then
    'se non scrive niente oppure non ha premuto nessun datagrid (dato che se non premi il datagrid la text3 non viene mai generata
    MsgBox "Quantità lasciata vuota!", vbCritical + vbOKOnly, "Errore"
    Else
    vecchio = Val(Text3.Text)
    nuovo = Val(Text4.Text)
    'converto in numerico i due campi
    End If
    'connessione al database
    provider = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\database\webmg.mdb" & ";mode=ReadWrite;Persist Security Info=False"
    Set cs = New ADODB.Connection
    Set rs = New ADODB.Recordset
    cs.Open provider
    rs.Open "magazzino", cs, 3, 3
    If ok = True Then
    'se ok è uguale vuol dire che ha premuto carica, quindi
    risultato = vecchio + nuovo
    'sommo
    rs.MoveFirst
    'vado al primo record
    Do
    rs.MoveNext
    Loop Until rs!codice = DataGrid1.Columns(0)
    'vai avanti finchè non trovi il codice descritto nella datagrid premuta
    rs.AddNew
    'aggiungo in quantià il valore niente
    'credo sia qui l'errore in quanto dovrebbe esserci un aggiornamento, non uno svuotamento
    rs!quantita = ""
    rs.Update
    rs.AddNew
    rs!quantita = risultato
    rs.Update
    'questo è tale e quale al prima ma nel caso abbia premuto scarica
    ElseIf ok = False Then
    risultato = vecchio - nuovo
    Do
    rs.MoveNext
    Loop Until rs!codice = DataGrid1.Columns(0)
    rs.AddNew
    rs!quantita = ""
    rs.Update
    rs.AddNew
    rs!quantita = risultato
    rs.Update
    End If
    Set rs = Nothing
    Set cs = Nothing
    Adodc1.Refresh
    Text3.Refresh
    Però non funziona, credo per molte ragioni. Qualcuno di voi mi sa aiutare?

  7. #7
    UP

  8. #8
    Porto ancora up, per favore aiutatemi

  9. #9
    Ennesimo up!

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 © 2026 vBulletin Solutions, Inc. All rights reserved.