Condividi tramite


Input dell'utente in un'applicazione Windows Form

In Windows Form, l'input dell'utente viene inviato alle applicazioni sotto forma di messaggi di Windows. Una serie di metodi sottoponibili a override elabora questi messaggi a livello di applicazione, modulo e controllo. Quando questi metodi ricevono messaggi tramite mouse e tastiera, generano eventi che possono essere gestiti per ottenere informazioni sull'input del mouse o della tastiera. In molti casi, Windows Form applicazioni sarà in grado di elaborare tutti gli input dell'utente semplicemente gestendo questi eventi. In altri casi, un'applicazione potrebbe dover eseguire l'override di uno dei metodi che elaborano i messaggi per intercettare un determinato messaggio prima che venga ricevuto dall'applicazione, dal modulo o dal controllo.

Eventi mouse e tastiera

Tutti i controlli Windows Form ereditano un set di eventi correlati all'input del mouse e della tastiera. Ad esempio, un controllo può gestire l'evento KeyPress per determinare il codice carattere di un tasto premuto oppure un controllo può gestire l'evento MouseClick per determinare la posizione di un clic del mouse. Per altre informazioni sugli eventi del mouse e della tastiera, vedere Uso di eventi della tastiera ed eventi del mouse in Windows Form.

Metodi che elaborano i messaggi di input dell'utente

Moduli e controlli hanno accesso all'interfaccia IMessageFilter e a un set di metodi sostituibili che elaborano i messaggi di Windows in punti diversi nella coda dei messaggi. Questi metodi hanno tutti un Message parametro che incapsula i dettagli di basso livello dei messaggi di Windows. È possibile implementare o eseguire l'override di questi metodi per esaminare il messaggio e quindi utilizzare il messaggio o passarlo al consumer successivo nella coda dei messaggi. La tabella seguente presenta i metodi che elaborano tutti i messaggi di Windows in Windows Form.

Method Note
PreFilterMessage Questo metodo intercetta i messaggi windows in coda (noti anche come pubblicati) a livello di applicazione.
PreProcessMessage Questo metodo intercetta i messaggi di Windows a livello di modulo e di controllo prima dell'elaborazione.
WndProc Questo metodo elabora i messaggi di Windows a livello di modulo e di controllo.
DefWndProc Questo metodo esegue l'elaborazione predefinita dei messaggi di Windows a livello di modulo e controllo. In questo modo viene fornita la funzionalità minima di una finestra.
OnNotifyMessage Questo metodo intercetta i messaggi a livello di modulo e controllo, dopo l'elaborazione. Per chiamare questo metodo, è necessario impostare il EnableNotifyMessage bit di stile.

I messaggi tramite tastiera e mouse vengono elaborati anche da un set aggiuntivo di metodi sostituibili specifici di tali tipi di messaggi. Per altre informazioni, vedere Funzionamento dell'input da tastiera e Funzionamento dell'input del mouse in Windows Form.

Vedi anche