PDA

Visualizza la versione completa : Passaggio record da una form all'altra


popit
24-05-2002, 10:19
Premetto che mi sono avvicinato da pochissimo al VB6.

Ho collegato con VB6 un database di access all'oggetto dbgrid

Adesso vorrei fare in modo che clikkando su un record fra quelli che appaiono nella griglia si acceda ad un'altra form in cui viene visualizzato lo stesso record on in textbox o in un'altra griglia.

Come posso fare ?

E' l'oggetto dbgrid che devo usare?

O flexgrid?


Grazie

Paolo

zoran_mandic
24-05-2002, 10:46
in pratica clikkando su un valore che ci sta nella tabella, ti apre un'altra schermata riportando tutti i valori di quella righa recordset???

popit
24-05-2002, 11:15
si è proprio così!!

mi aiuti a farlo ?

grazie

zoran_mandic
24-05-2002, 11:25
io ti illustro una mia versione, poi non lo so se ti piace, o se magari esistono modi migliori.
cmq.
Abbiamo una tabella con dei valori. Ora con il doppioclick apre un'altra schermata. Io farei cosi. Mi salverei l'Id della singola riha che viene crata nella tabella. Quando clikki sulla riga, viene preso quell'Id e viene passato alla form che deve visualizzare tutto. Fino a qui ci sei?
Con quella chiave appena passata faccio un'altra interrogazione e il risultato che mi viene restituito lo scrivo come mi pare, o nelle text o in'altra tabella.

Dimmi se ti interessa??

popit
24-05-2002, 11:38
in effetti è proprio in questo modo che lo faccio in asp.

Volevo effettivamente sapere se era possibile farlo anche in vb.

Purtroppo però dovrai aiutarmi nei passaggi.

Ti dico a che punto sono arrivato:

ho un form in cui mi appaiono tutti i record di una tabella in una db grid.

Ho preparato la form che deve essere aperta al dbclick su quel record.
che contiene o campi di testo o un'altra griglia


Attendo con impazienza

zoran_mandic
24-05-2002, 11:56
sai prendere il singolo valore dalla tabella??
Prova a fare questo, sul DClick fatti mandare un Messaggio "msgbox" riportando il valore clickkato.
In questo modo vedi come si legge il valore dalla tabella, poi il resto è una cavolata.

consulta MSDN per sapere come si legge un singolo valore. se non ci riesci chiamami. sono sempre nel forum.

popit
24-05-2002, 12:23
allora
sono riuscito a passare nell'altra form il valore in un campo testo ma il problema è che viene passato solo il valore presente nella cella selezionata.

Come faccio a passare tutta la riga?

adesso l'ho fatto in questo modo:

nella form_load in cui ricevo il valore ho inserito :
Text1.Text = form (DBGrid1) mi appare il valore selezionato nel precedente form in questa textbox

Mi aiuti ancora?

zoran_mandic
24-05-2002, 12:42
guarda sinceramente non ricordo come si passa tutto, in attesa di scoprire come viene passato tutto il contenuto puoi fare una select nel DB "select * from MiaTabella where id=" form(DBGrid1)
E il risultato ke ti viene restituito lo scivi nella text

Io purtroppo lavoro e ho da fare, quindi non mi posso mettere a fare delle prove, e quello che posso fare te lo dico. appena ho un secondo di tempo te lo faccio sapere, ok?

mi dispiace. fammi sapere.

cmq, ti illustro la mia versione al volo:
nella schermata ke deve visualizzare i valori creo una variabile di tipo stringa e di tipo Public:
"public IDValue as string"

quando faccio il doppio click sulla tabella assegno il valore appena letto alla mia variabile: FormVisualizzadati.IDValue = DBGrid1
e poi faccio FormVisualizzadati.show
La form FormVisualizzadati quando si carica deve interrogare il DB con il valore IDValue e scrivere il risultato dei appositi campi.
Fammi sapere ciao:)

serena
24-05-2002, 18:23
ciao,
devi creare un'altra form con tanti textbox quanti sono i campi, li associ ai campi della tabella access.
Quando sei sul dbgrid, prendi il valore come dice Zoran e lo passi nell'altra form, cerchi il val nella tab access e automaticamente sei puntato sul record selezionato dal dbgrid, così potrai vedere i tuoi dati nei textbox.

bye :ciauz:

Loading