Differenze tra le versioni di "Variabile del tipo di una Classe specifica creata"
(') |
|||
(7 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
− | + | Come è noto, è possibile creare via codice una particolare Classe, fornita di ''Proprietà'', ''Metodi'' ed ''Eventi''. <SUP>[[[#Note|nota 1]]]</sup> | |
− | + | =Variabili del tipo della Classe specifica creata= | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
La variabile per gestire le proprietà, oggetti, etc di una Classe ''particolare'' da noi creata deve essere del tipo di detta Classe ''particolare'': | La variabile per gestire le proprietà, oggetti, etc di una Classe ''particolare'' da noi creata deve essere del tipo di detta Classe ''particolare'': | ||
− | + | <FONT color=gray>' ''Dichiariamo la variabile del tipo della Classe specifica:''</font> | |
− | <FONT color= | ||
Private <FONT color=#B22222>vrCl</font> As Clcreata | Private <FONT color=#B22222>vrCl</font> As Clcreata | ||
− | + | Public Sub Button1_Click() | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
+ | With <FONT color=#B22222>vrCl</font> = New Clcreata | ||
+ | .vB = 1 | ||
+ | .vI = 1001 | ||
+ | .v$ = "prova" & .vB | ||
+ | End With | ||
− | <FONT color= | + | <FONT color=gray>' ''Gestiamo ora la variabile di tipo Button, crandone un paio:''</font> |
With vrCl.bu = New Button(Me) As "bu" | With vrCl.bu = New Button(Me) As "bu" | ||
Riga 163: | Riga 33: | ||
End With | End With | ||
− | + | End | |
− | + | Public Sub bu_Click() | |
With vrCl | With vrCl | ||
Riga 176: | Riga 46: | ||
Print Last.Text | Print Last.Text | ||
− | + | End | |
− | + | ||
− | |||
− | ==Utilizzare una Classe particolare con una variabile ''Variant''== | + | ==Utilizzare una Classe particolare con una variabile di tipo ''Variant''== |
− | Possiamo caricare anche in una variabile di tipo ''Variant'' le | + | Possiamo caricare anche in una variabile di tipo ''Variant'' le Proprietà e gli elementi che costituiscono la nostra Classe particolare creata: |
+ | Public Sub Button1_Click() | ||
− | + | Dim xx As Variant | |
− | |||
− | |||
With xx = New Clcreata | With xx = New Clcreata | ||
Riga 191: | Riga 59: | ||
.vI = 1900 | .vI = 1900 | ||
.v$ = "prova" & .vB | .v$ = "prova" & .vB | ||
− | + | End With | |
− | + | With xx | |
− | + | Print .vB | |
− | + | Print .vI | |
− | + | Print .v$ | |
− | + | End With | |
− | + | End | |
− | |||
− | |||
− | |||
− | + | ==Uso di una variabile del tipo della Classe particolare e di una variabile di tipo ''Variant''== | |
+ | Public Sub Button1_Click() | ||
Dim rr As Clcreata | Dim rr As Clcreata | ||
Dim vv As Variant | Dim vv As Variant | ||
− | + | With rr = New Clcreata | |
− | + | .vB = 1 | |
− | + | .vI = 1001 | |
− | + | .v$ = "prova" & .vB | |
− | + | End With | |
+ | <FONT color=gray>' ''Trasferiamo i valori da una variabile all'altra:''</font> | ||
+ | ali = rr | ||
− | + | With ali | |
− | + | Print .vB | |
+ | Print .vI | ||
+ | Print .v$ | ||
+ | End With | ||
− | + | End | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
Riga 234: | Riga 98: | ||
Nella Classe principale "FMain.Class" andiamo ad utilizzare la Classe particolare da noi creata, semplicemente creandone una variabile array e caricando i valori negli elementi di tale variabile array: | Nella Classe principale "FMain.Class" andiamo ad utilizzare la Classe particolare da noi creata, semplicemente creandone una variabile array e caricando i valori negli elementi di tale variabile array: | ||
− | + | <FONT color=gray>' ''Dichiara due variabili di tipo classe "Clval":''</font> | |
− | <FONT color= | + | |
− | ' ''una come array con numero di elementi non definito | + | Private clval1 As New Clcreata[] <FONT color=gray>' ''una come array con numero di elementi <U>non</u> definito''</font> |
− | |||
− | + | Public Sub Form_Open() | |
Dim a As Byte | Dim a As Byte | ||
− | Dim clval2 As Clcreata <FONT color= | + | Dim clval2 As Clcreata <FONT color=gray>'...''e un'altra ordinaria''</font> |
+ | For a = 0 To 99 | ||
+ | <FONT color=gray>' ''assegna i valori ai campi della variabile di tipo classe "Clval":''</font> | ||
+ | With clval2 = New Clcreata | ||
+ | .vB = a | ||
+ | .vI = 1000 + CInt(a) | ||
+ | .v$ = "prova " & Str(a) | ||
+ | End With | ||
+ | clval1.Add(clval2) | ||
+ | Next | ||
− | + | End | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | + | Public Sub Button1_Click() | |
− | + | Dim a As Byte | |
− | <FONT color= | + | <FONT color=gray>' ''Mostra in console i risultati:''</font> |
For a = 0 To 99 | For a = 0 To 99 | ||
With clval1[a] | With clval1[a] | ||
Riga 274: | Riga 133: | ||
Next | Next | ||
− | + | End | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=Note= | =Note= | ||
− | [1] | + | [1] Al riguardo vedere la seguente pagina: [[Creare da codice una Classe specifica]] |
− | |||
− |
Versione attuale delle 05:25, 21 giu 2024
Come è noto, è possibile creare via codice una particolare Classe, fornita di Proprietà, Metodi ed Eventi. [nota 1]
Indice
Variabili del tipo della Classe specifica creata
La variabile per gestire le proprietà, oggetti, etc di una Classe particolare da noi creata deve essere del tipo di detta Classe particolare:
' Dichiariamo la variabile del tipo della Classe specifica: Private vrCl As Clcreata Public Sub Button1_Click() With vrCl = New Clcreata .vB = 1 .vI = 1001 .v$ = "prova" & .vB End With ' Gestiamo ora la variabile di tipo Button, crandone un paio: With vrCl.bu = New Button(Me) As "bu" .X = 10 .Y = 10 .W = 100 .H = 100 .Text = "Bu" End With With vrCl.bu = New Button(Me) As "bu" .X = 200 .Y = 10 .W = 100 .H = 100 .Text = "Bu2" End With End Public Sub bu_Click() With vrCl Print .vB Print .vI Print .v$ End With Print Last.Text End
Utilizzare una Classe particolare con una variabile di tipo Variant
Possiamo caricare anche in una variabile di tipo Variant le Proprietà e gli elementi che costituiscono la nostra Classe particolare creata:
Public Sub Button1_Click() Dim xx As Variant With xx = New Clcreata .vB = 19 .vI = 1900 .v$ = "prova" & .vB End With With xx Print .vB Print .vI Print .v$ End With End
Uso di una variabile del tipo della Classe particolare e di una variabile di tipo Variant
Public Sub Button1_Click() Dim rr As Clcreata Dim vv As Variant With rr = New Clcreata .vB = 1 .vI = 1001 .v$ = "prova" & .vB End With ' Trasferiamo i valori da una variabile all'altra: ali = rr With ali Print .vB Print .vI Print .v$ End With End
Variabile array di tipo di una Classe creata
Possiamo gestire le proprietà di una particolare Classe, da noi creata, anche mediante una variabile array.
Nella Classe principale "FMain.Class" andiamo ad utilizzare la Classe particolare da noi creata, semplicemente creandone una variabile array e caricando i valori negli elementi di tale variabile array:
' Dichiara due variabili di tipo classe "Clval": Private clval1 As New Clcreata[] ' una come array con numero di elementi non definito Public Sub Form_Open() Dim a As Byte Dim clval2 As Clcreata '...e un'altra ordinaria For a = 0 To 99 ' assegna i valori ai campi della variabile di tipo classe "Clval": With clval2 = New Clcreata .vB = a .vI = 1000 + CInt(a) .v$ = "prova " & Str(a) End With clval1.Add(clval2) Next End Public Sub Button1_Click() Dim a As Byte ' Mostra in console i risultati: For a = 0 To 99 With clval1[a] Print .vB Print .vI Print .v$ End With Next End
Note
[1] Al riguardo vedere la seguente pagina: Creare da codice una Classe specifica