Creare array di oggetti: differenze tra le versioni

Da Gambas-it.org - Wikipedia.
Vai alla navigazione Vai alla ricerca
(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"...)
 
Nessun oggetto della modifica
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