Panoramica dei movimenti di tocco Windows

Questa sezione descrive i vari movimenti supportati da Windows Touch.

Panoramica dei movimenti

Windows Touch consente diversi movimenti che supportano contatti singoli e multipli. L'immagine seguente illustra i vari movimenti supportati in Windows 7.

illustration showing the gestures that windows touch supports 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 a Windows messaggi 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 impostata in lParam

Interpretazione dei movimenti di tocco Windows

Windows i movimenti Touch possono essere interpretati dagli sviluppatori di applicazioni gestendo il messaggio 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, i messaggi di movimento di panoramica aggiuntivi vengono creati 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 in cui viene premuto il primo dito.

movimenti di tocco Windows