Differenze tra le versioni di "Creare array di oggetti"

Da Gambas-it.org - Wikipedia.
(Nuova pagina: ''<Font Color= #006400>' Gambas class file</font> Lblarray[5] As Label ''<Font Color= #006400>' è posto il limite di prova massimo a 5 oggetti ("array di 5 elementi: da 0 a 4"...)
 
Riga 1: Riga 1:
''<Font Color= #006400>' Gambas class file</font>
+
Gli esempi che faremo, vedranno la creazione di un array indefinito di oggetti.
 +
 
 +
 
 +
 
 +
<FONT color=B22222>'''1'''</font>Uso del metodo ''.Add'' con un oggetto array e con specificazione dell'elemento dell'array nel quale inserire la Label:
 +
 
 +
<Font Color= #006400>' ''Gambas class file</font>
 
   
 
   
 +
Private obj As New Object[]
 +
c As Integer
 +
i As Integer
 
   
 
   
Lblarray[5] As Label  ''<Font Color= #006400>' è posto il limite di prova massimo a 5 oggetti ("array di 5 elementi: da 0 a 4")</font>
 
a As Integer
 
b As Integer
 
 
   
 
   
 +
'''Public''' Sub Button1_Click()
 
   
 
   
'''Public''' Sub Button1_Click()   ''<Font Color= #006400>' Crea una sola Label ogni qualvolta viene premuto Button1''</font>
+
    obj.Add(Label)
 +
    obj[i] = New Label(Me)
 
   
 
   
  Dim c, d As Integer
+
<FONT color=006400>' ''Viene mostrata la Label sul form:''</font>
 +
    With obj[i]
 +
      .X = 10 * i
 +
      .Y = c
 +
      .width = 100
 +
      .height = 20
 +
      .text = "Nuova Label"
 +
    End With
 
      
 
      
  b += 50
+
    c += 30
 
 
''<Font Color= #006400>' crea la Label e la distingue dalle altre eventuali con un numero contenuto nella variabile “ a “,
 
' ''(ma questa volta non in aggiunta alla sua denominazione).''</font>
 
Lblarray[a] = New Label(Me)
 
 
      
 
      
  With Lblarray[a]
+
  Inc i
  .Border = Border.Raised  ''<Font Color= #006400>' definisco le caratteristiche della label''</font>
 
  .W = 100
 
  .H = 20
 
  .X = b
 
  .Y = b
 
End With
 
 
''<Font Color= #006400>' per prova trovo l'ID della Label appena creata
 
' ''e distinta con la variabile "a" dell'array.''</font>
 
Print Lblarray[a].ID
 
 
 
''<Font Color= #006400>' Per ulteriore prova intendo distruggere una Label precedentemente creata
 
' ''indicandone (questa è la prova effettiva) il numero assegnatole con la variabile " a ".''</font>
 
  If a = 4 Then
 
    d = InputBox("Elimina una label (il numero deve essere compreso fra 0 e 4)")
 
 
''<Font Color= #006400>' ri-ottengo per riprova l'Id della Label scelta in InputBox''</font>
 
      Print Lblarray[d].ID
 
 
''<Font Color= #006400>' elimina la Label segnata dalla variabile dell'array scelta in InputBox''</font>
 
    Lblarray[d].delete     
 
 
  Endif
 
 
''<Font Color= #006400>' incremento la variabile relativa alla cella dell'array di indice 0''</font>
 
  a = a + 1
 
 
   
 
   
 
  '''End'''
 
  '''End'''

Versione delle 08:24, 15 apr 2012

Gli esempi che faremo, vedranno la creazione di un array indefinito di oggetti.


1Uso del metodo .Add con un oggetto array e con specificazione dell'elemento dell'array nel quale inserire la Label:

' Gambas class file

Private obj As New Object[]
c As Integer
i As Integer


Public Sub Button1_Click()

   obj.Add(Label)
   obj[i] = New Label(Me)

' 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
   
Inc i

End