Differenze tra le versioni di "Utilizzare la proprietà .Tag come un array di tipo Variant"
Da Gambas-it.org - Wikipedia.
Riga 5: | Riga 5: | ||
Mostriamo un esempio, nel quale la proprietà ''.Tag'' di un ''Button'' conterrà valori di diverso tipo: una stringa, un valore numerico, una variabile di tipo Struttura, una variabile array di tipo byte, una variabile stringa ed una di tipo byte; | Mostriamo un esempio, nel quale la proprietà ''.Tag'' di un ''Button'' conterrà valori di diverso tipo: una stringa, un valore numerico, una variabile di tipo Struttura, una variabile array di tipo byte, una variabile stringa ed una di tipo byte; | ||
− | + | Public Struct STRUTTURA | |
− | + | b As Byte | |
− | + | i As Integer | |
− | + | s As String | |
− | + | End Struct | |
− | |||
− | |||
'''Public''' Sub Button1_Click() | '''Public''' Sub Button1_Click() | ||
+ | Dim stt As New STRUTTURA | ||
Dim prova As String = "prova Tag" | Dim prova As String = "prova Tag" | ||
− | Dim | + | Dim bb As New Byte[] |
− | Dim | + | Dim b As Byte |
− | With | + | With stt |
− | . | + | .b = 10 |
− | . | + | .i = 100000 |
− | . | + | .s = "s = " & Str(.b + .i) |
End With | End With | ||
− | For | + | For b = 0 To 9 |
− | + | bb.Add(100 + b) | |
Next | Next | ||
With Button1 | With Button1 | ||
− | <FONT color= | + | <FONT color=gray>' ''Assegna un array formato da valori e variabili al .Tag del Button:''</font> |
− | .Tag = ["testo qualsiasi", 324, prova, | + | .Tag = ["testo qualsiasi", 324, prova, bb, stt] |
− | <FONT color= | + | <FONT color=gray>' ''Poi li mostra in console:''</font> |
Print .Tag[0] | Print .Tag[0] | ||
Print .Tag[1] | Print .Tag[1] | ||
Print .Tag[2] | Print .Tag[2] | ||
− | + | <FONT color=gray>' ''Mostra i valori assegnati agli elementi della variabile array:''</font> | |
− | <FONT color= | + | For b = 0 To bb.Max |
− | For | + | Print .Tag[3][b] |
− | Print .Tag[ | ||
Next | Next | ||
− | <FONT color= | + | <FONT color=gray>' ''Mostra i valori contenuti dagli elementi della variabile di tipo "Struttura":''</font> |
− | Print .Tag[ | + | Print .Tag[4].b |
− | Print .Tag[ | + | Print .Tag[4].i |
− | Print .Tag[ | + | Print .Tag[4].s |
End With | End With | ||
'''End''' | '''End''' |
Versione delle 15:33, 1 ott 2020
La Proprietà .Tag di un oggetto può essere anche utilizzata come un array di tipo Variant, e pertanto capace di contenere valori di diverso tipo.
Affinché ciò sia possibile, è necessario assegnare alla Proprietà .Tag un array di valori:
oggetto.Tag = [valore_1, valore_2, etc...]
Mostriamo un esempio, nel quale la proprietà .Tag di un Button conterrà valori di diverso tipo: una stringa, un valore numerico, una variabile di tipo Struttura, una variabile array di tipo byte, una variabile stringa ed una di tipo byte;
Public Struct STRUTTURA b As Byte i As Integer s As String End Struct Public Sub Button1_Click() Dim stt As New STRUTTURA Dim prova As String = "prova Tag" Dim bb As New Byte[] Dim b As Byte With stt .b = 10 .i = 100000 .s = "s = " & Str(.b + .i) End With For b = 0 To 9 bb.Add(100 + b) Next With Button1 ' Assegna un array formato da valori e variabili al .Tag del Button: .Tag = ["testo qualsiasi", 324, prova, bb, stt] ' Poi li mostra in console: Print .Tag[0] Print .Tag[1] Print .Tag[2] ' Mostra i valori assegnati agli elementi della variabile array: For b = 0 To bb.Max Print .Tag[3][b] Next ' Mostra i valori contenuti dagli elementi della variabile di tipo "Struttura": Print .Tag[4].b Print .Tag[4].i Print .Tag[4].s End With End