Procedure associate agli eventi
La caratteristica forse più interessante degli array di controlli è il fatto che tutti gli elementi di un array di controlli condividono le stesse procedure associate agli eventi.
Facciamo un esempio. Supponiamo di aver creato un array di controlli con 4 command button di nomi cmdPulsante(0)... cmdPulsante(3). Facendo due volte click su uno qualsiasi dei bottoni disposti sul form viene generata automaticamente la seguente procedura associata all'evento click:
Private Sub cmdPulsante_Click(Index As Integer)
End Sub
Il parametro Index (generato automaticamente al momento della creazione della procedura associata all'evento) specifica l'indice dell'elemento sul quale si è verificato l'evento. In altre parole: se in fase di esecuzione del programma faremo click sul bottone cmdPulsante(2), verrà chiamata la procedura cmdPulsante_Click con Index = 2.
Come ulteriore esempio si considerino le seguenti procedure associate a un vettore di caselle di testo. Lo sfondo della casella di testo selezionata (quella che ha il focus) diventa giallo. Quando la casella viene deselezionata, lo sfondo torna bianco:
Private Sub txtEs_GotFocus(Index As Integer)
txtEs(Index).BackColor = vbYellow
End Sub
Private Sub txtEs_LostFocus(Index As Integer)
txtEs(Index).BackColor = vbWhite
End Sub
Sito realizzato in base al template offerto da
http://www.graphixmania.it