Panoramica dei movimenti tocco di Windows
Questa sezione descrive i vari movimenti supportati da Windows Touch.
Panoramica dei movimenti
Windows Touch abilita diversi movimenti che supportano contatti singoli e multipli. L'immagine seguente illustra i vari movimenti supportati in Windows 7.
Nota
Alcuni riconoscitori sono più affidabili per interpretare i movimenti con più contatti quando i contatti sono più separati tra loro.
Supporto legacy
Per il supporto legacy, il gestore dei movimenti predefinito esegue il mapping di alcuni movimenti ai messaggi di Windows usati nelle versioni precedenti di Windows. Nella tabella seguente viene illustrato il modo in cui i movimenti vengono mappati ai messaggi legacy.
Movimento | Descrizione | Messaggi generati |
---|---|---|
Dettaglio | Il movimento di panoramica viene mappato all'uso della rotellina di scorrimento. |
WM_VSCROLL WM_HSCROLL |
Premere e tenere premuto | Il movimento premuto e premuto viene mappato con il pulsante destro del mouse. |
WM_RBUTTONDOWN WM_RBUTTONUP |
Zoom | Il movimento di zoom attiva i messaggi simili a tenere premuto il tasto CTRL e ruotare la rotellina del mouse per scorrere. | WM_MOUSEWHEEL con MK_CONTROL impostato in wParam |
Interpretazione dei movimenti tocco di Windows
I movimenti di Tocco di Windows possono essere interpretati dagli sviluppatori di applicazioni gestendo il messaggio di WM_GESTURE dalla funzione WndProc di un'applicazione. Dopo aver gestito questo messaggio, è possibile recuperare una struttura GESTUREINFO che descrive il movimento. La struttura GESTUREINFO avrà informazioni assortite che dipendono dal tipo di movimento.
La struttura GESTUREINFO viene recuperata passando l'handle alla struttura delle informazioni sui movimenti alla funzione GetGestureInfo .
I flag seguenti indicano i vari stati dei movimenti e vengono archiviati in dwFlags.
Nome | Valore | Descrizione |
---|---|---|
GF_BEGIN | 0x00000001 | Viene avviato un gesto. |
GF_INERTIA | 0x00000002 | Un gesto ha attivato l'inerzia. |
GF_END | 0x00000004 | Un gesto è finito. |
Nota
La maggior parte delle applicazioni deve ignorare i GID_BEGIN e GID_END e passarli a DefWindowProc. Questi messaggi vengono usati dal gestore dei movimenti predefinito. Il comportamento dell'applicazione non è definito quando i messaggi di GID_BEGIN e GID_END vengono usati da un'applicazione di terze parti.
La tabella seguente indica i vari identificatori per i movimenti.
Nome | Valore | Descrizione |
---|---|---|
GID_BEGIN | 1 | Viene avviato un gesto. |
GID_END | 2 | Un gesto termina. |
GID_ZOOM | 3 | Movimento di zoom. |
GID_PAN | 4 | Movimento di panoramica. |
GID_ROTATE | 5 | Movimento di rotazione. |
GID_TWOFINGERTAP | 6 | Movimento di tocco a due dita. |
GID_PRESSANDTAP | 7 | Movimento di pressione e tocco. |
Nota
Il movimento GID_PAN ha inertia predefinito. Alla fine di un movimento di panoramica, vengono creati altri messaggi di panoramica dal sistema operativo.
I membri della struttura GESTUREINFOptsLocation e ullArguments specificano un punto (usando la struttura POINTS ) e altre informazioni sui movimenti a seconda del movimento. Nella tabella seguente sono elencati i valori associati a ogni tipo di movimento.
ID movimento | ullArguments | ptsLocation |
---|---|---|
GID_ZOOM | Indica la distanza tra i due punti. | Indica il centro dello zoom. |
GID_PAN | Indica la distanza tra i due punti. | Indica la posizione corrente della panoramica. |
GID_ROTATE | Indica l'angolo di rotazione se il flag di GF_BEGIN è impostato. In caso contrario, questa è la modifica dell'angolo dopo l'avvio della rotazione. Viene firmato per indicare la direzione della rotazione. Usare le macro GID_ROTATE_ANGLE_FROM_ARGUMENT e GID_ROTATE_ANGLE_TO_ARGUMENT per ottenere e impostare il valore dell'angolo. | Questo indica il centro della rotazione che è il punto stazionino che l'oggetto di destinazione viene ruotato intorno. |
GID_TWOFINGERTAP | Indica la distanza tra le due dita. | Indica il centro delle due dita. |
GID_PRESSANDTAP | Indica il delta tra il primo dito e il secondo dito. Questo valore viene archiviato in una struttura POINT nei 32 bit inferiori del membro ullArguments . | Indica la posizione su cui viene premuto il primo dito. |