Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questa sezione descrive come il sistema fornisce l'input del mouse all'applicazione e il modo in cui l'applicazione riceve ed elabora tale input.
In questa sezione
| Argomento | Descrizione |
|---|---|
|
Informazioni sull'input del mouse |
In questo argomento viene illustrato l'input del mouse. |
|
uso dell'input del mouse |
Questa sezione illustra le attività associate all'input del mouse. |
|
riferimento all'input del mouse |
Funzioni
| Nome | Descrizione |
|---|---|
| _TrackMouseEvent | Invia messaggi quando il puntatore del mouse lascia una finestra o passa il puntatore del mouse su una finestra per un periodo di tempo specificato. Questa funzione chiama TrackMouseEvent se esistente, in caso contrario emula. |
| BlockInput | Blocca gli eventi di input da tastiera e mouse dal raggiungimento delle applicazioni. |
| dragDetect | Acquisisce il mouse e tiene traccia del suo movimento finché l'utente non rilascia il pulsante sinistro, preme il tasto ESC o sposta il mouse all'esterno del rettangolo di trascinamento intorno al punto specificato. La larghezza e l'altezza del rettangolo di trascinamento vengono specificate dai valori SM_CXDRAG e SM_CYDRAG restituiti dalla funzioneGetSystemMetrics. |
| EnableMouseInPointer | Consente al mouse di fungere da dispositivo di puntamento. |
| EnableWindow | Abilita o disabilita l'input del mouse e della tastiera per la finestra o il controllo specificato. Quando l'input è disabilitato, la finestra non riceve input, ad esempio i clic del mouse e i tasti. Quando l'input è abilitato, la finestra riceve tutto l'input. |
| GetCapture | Recupera un handle nella finestra (se presente) che ha acquisito il mouse. Solo una finestra alla volta può catturare il mouse; questa finestra riceve l'input del mouse indipendentemente dal fatto che il cursore si trova all'interno dei bordi. |
| GetDoubleClickTime | Recupera l'ora corrente di doppio clic per il mouse. Un doppio clic è una serie di due clic del pulsante del mouse, il secondo che si verifica entro un intervallo di tempo specificato dopo il primo. Il tempo di doppio clic è il numero massimo di millisecondi che possono verificarsi tra il primo e il secondo clic di un doppio clic. |
| GetMouseMovePointsEx | Recupera una cronologia di un massimo di 64 coordinate precedenti del mouse o della penna. |
| IsWindowEnabled | Determina se la finestra specificata è abilitata per l'input del mouse e della tastiera. |
| ReleaseCapture | Rilascia l'acquisizione del mouse da una finestra nel thread corrente e ripristina la normale elaborazione dell'input del mouse. Una finestra che ha acquisito il mouse riceve tutto l'input del mouse, indipendentemente dalla posizione del cursore, tranne quando si fa clic su un pulsante del mouse mentre il cursore si trova nella finestra di un altro thread. |
| SendInput | Sintetizza le sequenze di tasti, i movimenti del mouse e i clic dei pulsanti. |
| SetCapture | Imposta l'acquisizione del mouse sulla finestra specificata appartenente al thread corrente.
SetCapture acquisisce l'input del mouse quando il mouse si trova sulla finestra di acquisizione o quando il pulsante del mouse è stato premuto mentre il mouse si trovava sulla finestra di acquisizione e il pulsante è ancora inattivo. Solo una finestra alla volta può catturare il mouse. Se il cursore del mouse si trova su una finestra creata da un altro thread, il sistema indiricherà l'input del mouse alla finestra specificata solo se un pulsante del mouse è inattivo. |
| SetDoubleClickTime | Imposta l'ora di doppio clic per il mouse. Un doppio clic è una serie di due clic di un pulsante del mouse, il secondo che si verifica entro un intervallo di tempo specificato dopo il primo. Il tempo di doppio clic è il numero massimo di millisecondi che possono verificarsi tra il primo e il secondo clic di un doppio clic. |
| SwapMouseButton | Inverte o ripristina il significato dei pulsanti sinistro e destro del mouse. |
| TrackMouseEvent | Invia messaggi quando il puntatore del mouse lascia una finestra o passa il puntatore del mouse su una finestra per un periodo di tempo specificato. |
La funzione seguente è obsoleta.
| Funzione | Descrizione |
|---|---|
| mouse_event | Sintetizza il movimento del mouse e i clic dei pulsanti. |
Notifiche
| Nome | Descrizione |
|---|---|
| WM_APPCOMMAND | Notifica a una finestra che l'utente ha generato un evento di comando dell'applicazione, ad esempio facendo clic su un pulsante di comando dell'applicazione usando il mouse o digitando un tasto di comando dell'applicazione sulla tastiera. |
| WM_CAPTURECHANGED | Inviato alla finestra che sta perdendo l'acquisizione del mouse. |
| WM_LBUTTONDBLCLK | Inviato quando l'utente fa doppio clic sul pulsante sinistro del mouse mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_LBUTTONDOWN | Inviato quando l'utente preme il pulsante sinistro del mouse mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_LBUTTONUP | Inviato quando l'utente rilascia il pulsante sinistro del mouse mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_MBUTTONDBLCLK | Inviato quando l'utente fa doppio clic sul pulsante centrale del mouse mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_MBUTTONDOWN | Inviato quando l'utente preme il pulsante centrale del mouse mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_MBUTTONUP | Inviato quando l'utente rilascia il pulsante centrale del mouse mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_MOUSEACTIVATE | Inviato quando il cursore si trova in una finestra inattiva e l'utente preme un pulsante del mouse. La finestra padre riceve questo messaggio solo se la finestra figlio la passa alla funzioneDefWindowProc. |
| WM_MOUSEHOVER | Inviato a una finestra quando il cursore passa il puntatore sull'area client della finestra per il periodo di tempo specificato in una chiamata precedente a TrackMouseEvent. |
| WM_MOUSEHWHEEL | Inviato alla finestra messa a fuoco quando la rotellina orizzontale del mouse è inclinata o ruotata. La funzioneDefWindowProcpropaga il messaggio all'elemento padre della finestra. Non dovrebbe essere presente alcun inoltro interno del messaggio, perché DefWindowProc propagarlo fino alla catena padre finché non trova una finestra che lo elabora. |
| WM_MOUSELEAVE | Inviato a una finestra quando il cursore lascia l'area client della finestra specificata in una chiamata precedente a TrackMouseEvent. |
| WM_MOUSEMOVE | Inserito in una finestra quando si sposta il cursore. Se il mouse non viene acquisito, il messaggio viene inviato alla finestra contenente il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_MOUSEWHEEL | Inviato alla finestra messa a fuoco quando la rotellina del mouse viene ruotata. La funzioneDefWindowProcpropaga il messaggio all'elemento padre della finestra. Non dovrebbe essere presente alcun inoltro interno del messaggio, perché DefWindowProc propagarlo fino alla catena padre finché non trova una finestra che lo elabora. |
| WM_NCHITTEST | Inviato a una finestra per determinare quale parte della finestra corrisponde a una determinata coordinata dello schermo. Ciò può verificarsi, ad esempio, quando il cursore si sposta, quando viene premuto o rilasciato un pulsante del mouse o in risposta a una chiamata a una funzione, ad esempio WindowFromPoint. Se il mouse non viene acquisito, il messaggio viene inviato alla finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_NCLBUTTONDBLCLK | Inviato quando l'utente fa doppio clic sul pulsante sinistro del mouse mentre il cursore si trova all'interno dell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCLBUTTONDOWN | Inviato quando l'utente preme il pulsante sinistro del mouse mentre il cursore si trova all'interno dell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCLBUTTONUP | Pubblicato quando l'utente rilascia il pulsante sinistro del mouse mentre il cursore si trova all'interno dell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCMBUTTONDBLCLK | Inviato quando l'utente fa doppio clic sul pulsante centrale del mouse mentre il cursore si trova all'interno dell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCMBUTTONDOWN | Inviato quando l'utente preme il pulsante centrale del mouse mentre il cursore si trova all'interno dell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCMBUTTONUP | Inviato quando l'utente rilascia il pulsante centrale del mouse mentre il cursore si trova all'interno dell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCMOUSEHOVER | Inviato a una finestra quando il cursore passa il mouse sull'area non client della finestra per il periodo di tempo specificato in una chiamata precedente aTrackMouseEvent. |
| WM_NCMOUSELEAVE | Inviato a una finestra quando il cursore lascia l'area non client della finestra specificata in una chiamata precedente aTrackMouseEvent. |
| WM_NCMOUSEMOVE | Inserito in una finestra quando il cursore viene spostato all'interno dell'area non client della finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCRBUTTONDBLCLK | Inviato quando l'utente fa doppio clic sul pulsante destro del mouse mentre il cursore si trova all'interno dell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCRBUTTONDOWN | Inviato quando l'utente preme il pulsante destro del mouse mentre il cursore si trova all'interno dell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCRBUTTONUP | Inviato quando l'utente rilascia il pulsante destro del mouse mentre il cursore si trova all'interno dell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCXBUTTONDBLCLK | Inviato quando l'utente fa doppio clic su XBUTTON1 o XBUTTON2 mentre il cursore si trova nell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCXBUTTONDOWN | Inviato quando l'utente preme XBUTTON1 o XBUTTON2 mentre il cursore si trova nell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_NCXBUTTONUP | Inviato quando l'utente rilascia XBUTTON1 o XBUTTON2 mentre il cursore si trova nell'area non client di una finestra. Questo messaggio viene inviato alla finestra contenente il cursore. Se una finestra ha acquisito il mouse, questo messaggio non viene pubblicato. |
| WM_RBUTTONDBLCLK | Inviato quando l'utente fa doppio clic sul pulsante destro del mouse mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_RBUTTONDOWN | Inviato quando l'utente preme il pulsante destro del mouse mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_RBUTTONUP | Pubblicato quando l'utente rilascia il pulsante destro del mouse mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_XBUTTONDBLCLK | Inviato quando l'utente fa doppio clic su XBUTTON1 o XBUTTON2 mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_XBUTTONDOWN | Inviato quando l'utente preme XBUTTON1 o XBUTTON2 mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
| WM_XBUTTONUP | Inviato quando l'utente rilascia XBUTTON1 o XBUTTON2 mentre il cursore si trova nell'area client di una finestra. Se il mouse non viene acquisito, il messaggio viene inserito nella finestra sotto il cursore. In caso contrario, il messaggio viene inviato alla finestra che ha acquisito il mouse. |
Strutture
| Nome | Descrizione |
|---|---|
| HARDWAREINPUT | Contiene informazioni su un messaggio simulato generato da un dispositivo di input diverso da una tastiera o un mouse. |
| INPUT | Contiene informazioni usate per la diffusione di eventi di input, ad esempio sequenze di tasti, spostamento del mouse e clic del mouse. |
| LASTINPUTINFO | Contiene l'ora dell'ultimo input. |
| MOUSEINPUT | Contiene informazioni su un evento del mouse simulato. |
| MOUSEMOVEPOINT | Contiene informazioni sulla posizione del mouse nelle coordinate dello schermo. |
| TRACKMOUSEEVENT | Utilizzato dalla funzioneTrackMouseEventper tenere traccia quando il puntatore del mouse lascia una finestra o passa il puntatore su una finestra per un periodo di tempo specificato. |