EvaluateProximityToPolygon-Funktion (winuser.h)

Gibt die Punktzahl eines Polygons als wahrscheinliches Touchziel (im Vergleich zu allen anderen Polygonen, die den Touchkontaktbereich überschneiden) und einen angepassten Touchpunkt innerhalb des Polygons zurück.

Syntax

BOOL EvaluateProximityToPolygon(
        UINT32                                 numVertices,
  [in]  const POINT                            *controlPolygon,
  [in]  const TOUCH_HIT_TESTING_INPUT          *pHitTestingInput,
  [out] TOUCH_HIT_TESTING_PROXIMITY_EVALUATION *pProximityEval
);

Parameter

numVertices

Die Anzahl der Scheitelpunkte im Polygon. Dieser Wert muss größer oder gleich 3 sein.

Dieser Wert gibt die Größe des Arrays an, wie durch den controlPolygon-Parameter angegeben.

[in] controlPolygon

Das Array von x-y-Bildschirmkoordinaten, die die Form des UI-Elements definieren.

Der numVertices-Parameter gibt die Anzahl der Koordinaten an.

[in] pHitTestingInput

Die TOUCH_HIT_TESTING_INPUT Struktur, die die Daten für den Touchkontaktbereich enthält.

[out] pProximityEval

Die TOUCH_HIT_TESTING_PROXIMITY_EVALUATION Struktur, die die Bewertung und die angepassten Touchpointdaten enthält.

Rückgabewert

Wenn diese Funktion erfolgreich ist, gibt sie TRUE zurück.

Andernfalls wird FALSE zurückgegeben. Um erweiterte Fehlerinformationen abzurufen, rufen Sie die GetLastError-Funktion auf.

Hinweise

Aus Gründen der Konsistenz mit Windows sollten Frameworks, die WM_TOUCHHITTESTING behandeln, die folgenden Prinzipien für die Ausrichtung verwenden:

  • Einschluss: Wenn sich der Touchpunkt innerhalb der Grenzen eines Steuerelements befindet, wird der Touchpunkt nicht geändert.
  • Schnittmenge: Schließen Sie nur Steuerelemente ein, die die Kontaktgeometrie überschneiden.
  • Z-Reihenfolge: Wenn mehr als ein Steuerelement die Kontaktgeometrie überschneidet und sich die Steuerelemente überlappen, erhält das Steuerelement, das in der z-Reihenfolge am höchsten ist, Priorität.
  • Mehrdeutigkeit: Wenn mehr als ein Steuerelement die Kontaktgeometrie überschneidet und sich die Steuerelemente nicht überlappen, erhält das Steuerelement, das dem ursprünglichen Touchpunkt am nächsten ist, Priorität.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Nicht unterstützt
Zielplattform Windows
Kopfzeile winuser.h
Bibliothek User32.lib
DLL User32.dll

Siehe auch

Funktionen