CloseGestureInfoHandle-Funktion (winuser.h)

Schließt Ressourcen, die einem Gesteninformationshandle zugeordnet sind.

Syntax

BOOL CloseGestureInfoHandle(
  HGESTUREINFO hGestureInfo
);

Parameter

hGestureInfo

Das Gesteninformationshandle.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ungleich Null.

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null. Verwenden Sie die GetLastError-Funktion , um erweiterte Fehlerinformationen abzurufen.

Hinweise

Wenn eine Anwendung eine WM_GESTURE Nachricht verarbeitet, ist sie dafür verantwortlich, das Handle mithilfe dieser Funktion zu schließen. Andernfalls kann es zu Speicherverlusten im Prozess kommen.

Wenn die Nachricht an DefWindowProc übergeben wird oder mithilfe einer der PostMessage- oder SendMessage-Klassen von API-Funktionen weitergeleitet wird, wird das Handle mit der Nachricht übertragen und muss nicht von der Anwendung geschlossen werden.

Beispiele

Der folgende Code zeigt einen Handler, der das GESTE-Handle schließt, wenn die Geste verarbeitet wurde.

  LRESULT DecodeGesture(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam){
    // Create a structure to populate and retrieve the extra message info.
    GESTUREINFO gi;  
    
    ZeroMemory(&gi, sizeof(GESTUREINFO));
    
    gi.cbSize = sizeof(GESTUREINFO);

    BOOL bResult  = GetGestureInfo((HGESTUREINFO)lParam, &gi);
    BOOL bHandled = FALSE;

    if (bResult){
        // now interpret the gesture
        switch (gi.dwID){
           case GID_ZOOM:
               // Code for zooming goes here     
               bHandled = TRUE;
               break;
           case GID_PAN:
               // Code for panning goes here
               bHandled = TRUE;
               break;
           case GID_ROTATE:
               // Code for rotation goes here
               bHandled = TRUE;
               break;
           case GID_TWOFINGERTAP:
               // Code for two-finger tap goes here
               bHandled = TRUE;
               break;
           case GID_PRESSANDTAP:
               // Code for roll over goes here
               bHandled = TRUE;
               break;
           default:
               // A gesture was not recognized
               break;
        }
    }else{
        DWORD dwErr = GetLastError();
        if (dwErr > 0){
            //MessageBoxW(hWnd, L"Error!", L"Could not retrieve a GESTUREINFO structure.", MB_OK);
        }
    }
    if (bHandled){
        return 0;
    }else{
        return DefWindowProc(hWnd, message, wParam, lParam);
    }
  }

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 7 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 R2 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winuser.h (einschließlich Windows.h)
Bibliothek User32.lib
DLL User32.dll
APIs ext-ms-win-ntuser-misc-l1-2-0 (eingeführt in Windows 8.1)

Siehe auch

Funktionen

Programmierhandbuch für Gesten