WM _ TOUCH-Nachricht
Benachrichtigt das Fenster, wenn ein oder mehrere Berührungspunkte, z. B. ein Finger oder Stift, eine berührungsempfindliche Digitizeroberfläche berühren.
Parameter
-
wParam
-
Das Wort in niedriger Reihenfolge enthält die Anzahl von Berührungspunkten, die dieser Nachricht zugeordnet sind. Das obere Wort ist für die zukünftige Verwendung reserviert.
-
lParam
-
Enthält ein Toucheingabehand handle, das in einem Aufruf von GetTouchInputInfo verwendet werden kann, um ausführliche Informationen zu den Touchpunkten abzurufen, die dieser Nachricht zugeordnet sind.
Dieses Handle ist nur innerhalb des aktuellen Prozesses gültig und sollte nur als LPARAM in einem SendMessage- oder PostMessage-Aufruf prozessübergreifend übergeben werden.
Wenn die Anwendung dieses Handle nicht mehr benötigt, muss die Anwendung CloseTouchInputHandle aufrufen, um den diesem Handle zugeordneten Prozessspeicher frei zu geben. Andernicht kann dies zu einem Speicherverlust der Anwendung führen.
Beachten Sie, dass das Toucheingabehand handle in diesem Parameter nicht mehr gültig ist, nachdem die Nachricht an DefWindowProc übergeben wurde. DefWindowProc schließt dieses Handle und macht es ungültig.
Beachten Sie auch, dass das Toucheingabehand handle in diesem Parameter nicht mehr gültig ist, nachdem die Nachricht mitHilfe von PostMessage, SendMessage oder einer ihrer Varianten weitergeleitet wurde. Diese Funktionen schließen dieses Handle und machen es ungültig.
Rückgabewert
Wenn eine Anwendung diese Nachricht verarbeitet, sollte sie 0 (null) zurückgeben.
Wenn die Anwendung die Nachricht nicht verarbeiten kann, muss sie DefWindowProc aufrufen. Wenn dies nicht erfolgt, gibt die Anwendung Arbeitsspeicher frei, da das Toucheingabehand handle nicht geschlossen und der zugeordnete Prozessspeicher nicht frei wird.
Hinweise
WM _ TOUCH-Nachrichten achten nicht auf HTTRANSPARENT-Fensterregionen. Wenn ein Fenster HTTRANSPARENT als Antwort auf eine WM _ NCHITTEST-Nachricht zurückgibt, werden Mausnachrichten an das übergeordnete Element gesendet, und WM _ TOUCH-Nachrichten werden direkt an das Fenster gesendet.
Beispiele
Der folgende Code ist ein Beispiel für das Abrufen detaillierter Toucheingabeinformationen, die dieser Nachricht zugeordnet sind.
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);
Anforderungen
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows 7 [ Desktop-Apps] |
| Unterstützte Mindestversion (Server) |
Windows Nur Server 2008 [ R2-Desktop-Apps] |
| Header |
|