Richiamare un campo di una Collection in un'altra Collection

Da Gambas-it.org - Wikipedia.

E' possibile in una Collection contenere e richiamare il campo appartenente ad un'altra Collection.

Nell'esempio, che segue, abbiamo due Collection. In un campo della seconda Collection sarà inserito un riferimento ad un campo della prima Collection:

Private collezione_1 As New Collection
Private collezione_2 As New Collection


Public Sub Form_Open()
 Dim valore_immesso, campo2 as Integer
 Dim campo1 As Byte

 valore_immesso = InputBox("Inserisci dato byte:")
 campo1 = 144
 campo2 = 10000

 With collezione_1
    .add(campo1, "chiave1")
    .add(campo2, "chiave2")
 End With

 With collezione_2
   .add(valore_immesso, "chiave_per_immesso")
   .add(123, "chiave_numeri")
   .add("testo", "chiave_testo")
' Aggiunge il campo della Collection 'collezione_1':
   .add(collezione_1["chiave1"], "chiave_per_campo1")
 End With

End


Public Sub Button1_Click()

 Print collezione_2["chiave_per_immesso"]   ' scrive in console il valore immesso con l'inputbox
 Print collezione_2["chiave_numeri"]        ' scrive in console: 123
 Print collezione_2["chiave_testo"]         ' scrive in console: testo
 Print collezione_2["chiave_t" & "esto"]    ' scrive in console: testo
' Verifica il riferimento all'altra Collection ("bici"'), richiamandone la chiave impostata nella Collection 'collezione_1':
 Print collezione_2["chiave_per_campo1"]    ' scrive in console: 144 (campo/valore dell'altra Collection “collezione_1”)

End