Creare array di oggetti
Da Gambas-it.org - Wikipedia.
Versione del 13 ott 2012 alle 18:17 di Vuott (Discussione | contributi)
Verranno mostrati alcuni esempi per la creazione di oggetti mediante l'uso di un array. |1|
Indice
- 1 Semplice codice basilare per la creazione di un array del tipo di un oggetto
- 2 Creazione di un array indefinito di oggetti
- 2.1 Creare un array indefinito di oggetti mediante l'uso del metodo .add con una variabile array di tipo "oggetto" e con specificazione dell'elemento dell'array nel quale inserire l'oggetto medesimo
- 2.2 Uso del metodo .Add con una variabile array di tipo "oggetto" e senza specificazione dell'elemento dell'array nel quale inserire l'oggetto medesimo
- 3 Creare un array senza uso della variabile di tipo "oggetto" e del relativo metodo .add, ponendo un array di dimensioni definite
- 4 Note
Semplice codice basilare per la creazione di un array del tipo di un oggetto
Uso del metodo .Add con una variabile array del medesimo tipo dell'oggetto che sarà ivi contenuto:
Public Sub Form_Open() Dim bt As Button Dim ar As New Button[] Dim j As Byte For j = 0 To 9 bt = New Button(Me) As "bt" & j ar.Add(bt) Next For j = 0 To 9 With ar[j] .X = 10 .Y = 1 + (30 * j) .W = 60 .H = 30 End With Next End
Creazione di un array indefinito di oggetti
Creare un array indefinito di oggetti mediante l'uso del metodo .add con una variabile array di tipo "oggetto" e con specificazione dell'elemento dell'array nel quale inserire l'oggetto medesimo
Public Sub Button1_Click() Dim obj As New Object[] Dim c, i As Integer obj.Add(Label) ' La sintassi "New Label(Me)" istruisce l'interprete ' che l'oggetto deve essere creato ed assegnato al Form (Parent): obj[i] = New Label(Me) ' Ad ogni clic sul tasto viene mostrata la Label sul form: With obj[i] .X = 10 * i .Y = c .width = 100 .height = 20 .text = "Nuova Label" End With c += 30 ' Viene incrementata la variabile relativa alla cella dell'array di indice 0: Inc i End
Uso del metodo .Add con una variabile array di tipo "oggetto" e senza specificazione dell'elemento dell'array nel quale inserire l'oggetto medesimo
Private obja As New Object[] Private k As Integer Private j As Byte Public Sub Button1_Click() Dim fo As Form Dim box As New Form ' istanzio un Form: fo = New Form As "fo" ' ...e lo aggiungo ad un elemento dell'array: obja.Add(fo) ' evito di superare il numero di elementi dell'array: If j > obja.max Then Return k = k + 60 box = obja[j] ' Ad ogni clic sul tasto viene mostrato un Form: With box .W = 150 .H = 150 .X = k .Y = k .Caption = "Nuovo Form" .Show .TopOnly = True End With ' Viene incrementata la variabile relativa alla cella dell'array di indice 0: Inc j End
Creare un array senza uso della variabile di tipo "oggetto" e del relativo metodo .add, ponendo un array di dimensioni definite
Private Lblarray As New Label[9] ' è posto il limite massimo a 10 oggetti ("array di 10 elementi: da 0 a 9") Private a As Integer Private b As Integer Public Sub Button1_Click() ' Crea una Label ogni qualvolta viene premuto Button1 Dim c, d As Integer b += 50 ' La sintassi "New Label(Me)" istruisce l'interprete ' che l'oggetto deve essere creato ed assegnato al Form (Parent): Lblarray[a] = New Label(Me) ' Viene mostrata la Label sul Form: With Lblarray[a] .Border = Border.Raised ' sono definite le caratteristiche della label... .W = 100 .H = 20 .X = b .Y = b .text = "Nuova Label" End With ' Viene incrementata la variabile relativa alla cella dell'array di indice 0: Inc a End
Note
[1] Un Array è un insieme di elementi del medesimo tipo. Pertanto un Array del tipo Integer sarà un insieme di valori interi.