messaggio WM_TOUCH
Notifica alla finestra quando uno o più punti di tocco, ad esempio un dito o una penna, tocca una superficie di digitalizzazione sensibile al tocco.
Parametri
-
wParam
-
La parola a basso ordine contiene il numero di punti di tocco associati a questo messaggio. La parola ad ordine elevato è riservata per l'uso futuro.
-
lParam
-
Contiene un handle di input tocco che può essere usato in una chiamata a GetTouchInputInfo per recuperare informazioni dettagliate sui punti di tocco associati a questo messaggio.
Questo handle è valido solo all'interno del processo corrente e non deve essere passato tra processi tranne come LPARAM in una chiamata SendMessage o PostMessage.
Quando l'applicazione non richiede più questo handle, l'applicazione deve chiamare CloseTouchInputHandle per liberare la memoria del processo associata a questo handle. La mancata operazione può causare una perdita di memoria dell'applicazione.
Si noti che l'handle di input tocco in questo parametro non è più valido dopo che il messaggio è stato passato a DefWindowProc. DefWindowProc chiuderà e invaliderà questo handle.
Si noti anche che l'handle di input tocco in questo parametro non è più valido dopo che il messaggio è stato inoltrato usando PostMessage, SendMessage o una delle relative varianti. Queste funzioni chiuderanno e invalideranno questo handle.
Valore restituito
Se un'applicazione elabora questo messaggio, deve restituire zero.
Se l'applicazione non elabora il messaggio, deve chiamare DefWindowProc. In questo modo l'applicazione perde memoria perché l'handle di input tocco non è chiuso e la memoria del processo associata non viene liberata.
Commenti
WM_TOUCH messaggi non rispettano le aree HTTRANSPARENT delle finestre. Se una finestra restituisce HTTRANSPARENT in risposta a un messaggio WM_NCHITTEST , i messaggi del mouse passano all'elemento padre e WM_TOUCH messaggi passano direttamente alla finestra.
Esempio
Il codice seguente è un esempio di come ottenere informazioni dettagliate sull'input tocco associato a questo messaggio.
UINT cInputs = LOWORD(wParam);
PTOUCHINPUT pInputs = new TOUCHINPUT[cInputs];
if (NULL != pInputs)
{
if (GetTouchInputInfo((HTOUCHINPUT)lParam,
cInputs,
pInputs,
sizeof(TOUCHINPUT)))
{
// process pInputs
if (!CloseTouchInputHandle((HTOUCHINPUT)lParam))
{
// error handling
}
}
else
{
// GetLastError() and error handling
}
delete [] pInputs;
}
else
{
// error handling, presumably out of memory
}
return DefWindowProc(hWnd, message, wParam, lParam);
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato |
Windows 7 [solo app desktop] |
Server minimo supportato |
Windows Server 2008 R2 [solo app desktop] |
Intestazione |
|