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")
' Aggiungiamo 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
' Verifichiamo il riferimento al'altra Collection ("bici"'), richiamandone la chiave impostata nella Collection 'auto':
 Print collezione_2["chiave_per_campo1"]    ' scrive in console: 144 (campo/valore dell'altra Collection “collezione_1”)

End


Note