Corso di Visual Basic

Gli eventi II

 

In questa lezione vedremo quali sono i principali eventi dei controlli.


Click e DblClick
Eventi che occorrono facendo click e doppio click con il pulsante sinistro del mouse su un punto vuoto della finestra

Change
Occorre quando il testo (proprietà text) del controllo viene modificato.
 
GotFocus
Questo evento viene intercettato quando il controllo riceve il focus.

LostFocus
Scatta alla perdita del focus.

KeyPress
Occorre digitando un tasto della tastiera. Restituisce un valore che rappresenta il codice ASCII del tasto digitato. Questo evento si utilizza in molte situazioni, ad esempio se si vuole convertire automaticamente in maiuscolo ciò che l’utente sta digitando.

KeyDown e KeyUP
Occorrono immediatamente prima (e dopo) del KeyPress: alla pressione e al rilascio di un tasto. Questi due eventi sono indispensabili per intercettare la digitazione di un tasto funzione.

MouseDown e MouseUp
Questi due eventi occorrono immediatamente prima (e dopo) del click, cioè quando viene abbassato e rilasciato il pulsante sinistro del mouse quando si fa click sul controllo.

MouseMove
Evento che scatta muovendo il mouse sul controllo.

Naturalmente esistono altri eventi, specifici di ogni controllo. Per il momento accontentiamoci di imparare i principale e di volta in volta affronteremo i nuovi.
Per poter programmare gli eventi occorre conoscere le basi di programmazione del linguaggio BASIC: i costrutti, le variabili, le costanti, gli operatori, le procedure e le funzioni.
Questi saranno gli argomenti che affronteremo le prossime lezioni, ma per poter capire un importante esempio di utilizzo degli eventi introduciamo la struttura di controllo IF.
Ma cos’è una struttura di controllo?  E’ un elemento del linguaggio che permette di controllare il flusso delle istruzioni. Infatti abbiamo detto che le istruzioni che diamo a Visual Basic vengono eseguite se si verifica un certo evento, e,  all’interno della procedura di evento, le istruzioni vengono eseguite una dopo l’altra a meno che si faccia uso di questi strumenti.
Le strutture quindi modificano la sequenza delle istruzioni eseguite in base al verificarsi di un certa condizione (strutture di controllo o decisionali) oppure permettono di ripetere un certo numero di istruzioni (cicli).

La struttura decisionale IF
Se il programma deve prendere delle decisioni, Visual Basic prevede la struttura If (presente, tra l’altro, in quasi tutti i linguaggi) caratterizzata dalla seguente sintassi:

If <condizione> Then
<istruzioni da eseguire se la condizione è vera>
[Else
<istruzioni da eseguire se la condizione è falsa>]
End If

La condizione può essere rappresentata da un’ espressione logica, cioè un’espressione che dà come risultato vero o falso. Se essa è verificata viene eseguito il blocco di istruzioni indicato fra le parole chiave Then e Else. In caso contrario, è eseguito il secondo gruppo di istruzioni. Si noti che quest'ultimo può anche essere assente. In tal caso, la parola chiave Else non va utilizzata e non è eseguito alcun codice in caso di mancata verifica della condizione.
La frase End If delimita la struttura.

Esempio
Per visualizzare un messaggio diverso a seconda che un saldo sia positivo o negativo:

Private Sub CmdCalcola_Click()
  IF Saldo > 0 then
     MsgBox “Saldo positivo”
  else
     MsgBox “Saldo negativo”
  End If
End Sub

Dopo questa dovuta premessa siamo in grado di capire meglio l’esempio di utilizzo dell’evento KeyPress di una casella di testo. Queste semplici righe di codice ci permettono di utilizzare anche il tasto INVIO per passare da una casella all’altra, oltre che il tasto TAB (quello predefinito di Window).

In pratica viene verificato se il codice ASCII del tasto premuto corrisponde a quello dell’invio (13) e, in tal caso, viene simulata la pressione del TAB utilizzando un apposito comando di Visual Basic denominato SendKeys.

Private Sub Text1_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
     SendKeys "{tab}"
     KeyAscii = 0
  End If
End Sub

Dalle prossime lezioni entreremo nel vivo del linguaggio, imparando gli elementi fondamentali alla base della programmazione.

Ci addentreremo nel “cuore” del linguaggio: gli elementi base di programmazione.

 

Torna all'indice Generale del corso di Corso di Visual Basic di Software Planet