Differenze tra le versioni di "Utilizzare la proprietà .Tag come un array di tipo Variant"
Da Gambas-it.org - Wikipedia.
(5 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
− | La Proprietà | + | 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à | + | 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 | + | 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 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 |
Versione attuale delle 20:47, 5 ago 2023
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