Definizione di eventi in Visual Basic
In Microsoft Visual Basic, un evento è un messaggio inviato da un oggetto all'interno di un programma al ciclo principale del programma, informandolo che è accaduto qualcosa. Questo "qualcosa" può variare ampiamente, da un timer che si sta esaurendo a un clic del mouse da parte dell'utente. Il programma può acquisire questo evento e utilizzare le informazioni al suo interno per prendere decisioni su ulteriori operazioni.
Esempi
Visual Basic viene fornito precaricato con una vasta quantità di eventi precodificati, sebbene gli utenti possano anche scriverne di propri. Questi eventi coprono quasi ogni aspetto del funzionamento e dell'interazione del programma. Alcuni eventi correlati all'interazione tra il cursore del mouse e un controllo su un modulo (come un pulsante) includono MouseClick, MouseDoubleClick, MouseEnter, MouseLeave, MouseWheel, MouseMove e MouseHover. Agli eventi vengono generalmente assegnati nomi molto intuitivi, per facilitare la lettura del codice Visual Basic.
Attivazione
Gli eventi possono essere attivati da un gran numero di situazioni. Molti eventi sono il risultato dell'interazione dell'utente, come il movimento del mouse o l'immissione da tastiera. Il sistema operativo Windows invia anche eventi, notificando al programma quando è ridotto a icona o quando un'altra finestra si sovrappone. Gli oggetti possono attivare i propri eventi, ad esempio quando una variabile ha raggiunto un certo valore. Infine, gli eventi possono essere messi in moto programmandoli ad hoc per farlo, per mezzo di ciò che viene chiamato "rilancio".
Dichiarazione
I nuovi eventi vengono creati utilizzando un comando di dichiarazione. Il codice per questo generalmente è simile al seguente:
Evento pubblico OptionChanged(ByVal Name As String, ByVal Number As Integer)
Questo evento di esempio dovrebbe essere programmato manualmente per essere generato alla modifica di un'opzione e invierà due valori al programma:il nome dell'opzione modificata e il valore a cui è stata impostata.
Eventi in aumento
Sollevare un evento è l'atto di farlo accadere. Questo può essere fatto con una singola riga di codice inserita nel tuo programma, come ad esempio:
RaiseEvent OptionChanged("Lunghezza", 28)
Questo avviserà quindi il programma dello svolgimento dell'evento e invierà le informazioni contenute a una procedura di handler, se esistente.
Gestori
Un gestore è una procedura che il programma chiama quando si verifica un evento specifico. Il gestore può quindi reagire alle informazioni, elaborandole o inviando informazioni all'utente. Per prima cosa l'evento e il suo gestore devono essere associati manualmente, in modo che il programma sappia che l'uno dovrebbe chiamare l'altro. Ad esempio, per aggiungere un gestore al nostro evento OptionChanged, è necessario qualcosa del genere:
AddHandler Obj.OptionChanged, AddressOf Me.OptionChangedHandler
Dopo di che è possibile aggiungere il gestore stesso. Un gestore per OptionChanged potrebbe essere il seguente:
Sub OptionChangedHandler(ByVal Name As String, ByVal Number As Integer) MsgBox("Il valore per " &Name.ToString &"è stato modificato!) End Sub