EvaluateProximityToPolygon 関数 (winuser.h)
多角形のスコアを、可能性のあるタッチ ターゲット (タッチ接触領域と交差する他のすべてのポリゴンと比較) と、多角形内の調整されたタッチ ポイントとして返します。
構文
BOOL EvaluateProximityToPolygon(
UINT32 numVertices,
[in] const POINT *controlPolygon,
[in] const TOUCH_HIT_TESTING_INPUT *pHitTestingInput,
[out] TOUCH_HIT_TESTING_PROXIMITY_EVALUATION *pProximityEval
);
パラメーター
numVertices
ポリゴン内の頂点の数。 この値は 3 以上である必要があります。
この値は、 controlPolygon パラメーターで指定された配列のサイズを示します。
[in] controlPolygon
UI 要素の形状を定義する x-y 画面座標の配列。
numVertices パラメーターは、座標の数を指定します。
[in] pHitTestingInput
タッチ接触領域のデータを保持する TOUCH_HIT_TESTING_INPUT 構造。
[out] pProximityEval
スコアと調整されたタッチ ポイント データを保持する TOUCH_HIT_TESTING_PROXIMITY_EVALUATION 構造。
戻り値
この関数が成功すると、TRUE が返されます。
それ以外の場合は、FALSE を返します。 拡張エラー情報を取得するには、 GetLastError 関数を呼び出します。
注釈
Windows との一貫性を確保するために、 WM_TOUCHHITTESTING を処理するフレームワークでは、ターゲット設定に次の原則を使用する必要があります。
- インクルージョン: タッチ ポイントがコントロールの境界内にある場合、タッチ ポイントは変更されません。
- 交差: 接触ジオメトリと交差するコントロールのみを含めます。
- Z オーダー: 複数のコントロールが接触ジオメトリと交差し、コントロールが重なっている場合、z オーダーで最も高いコントロールが優先されます。
- あいまいさ: 複数のコントロールが接触ジオメトリと交差し、コントロールが重なっていない場合、元のタッチ ポイントに最も近いコントロールが優先されます。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | サポートなし |
対象プラットフォーム | Windows |
ヘッダー | winuser.h |
Library | User32.lib |
[DLL] | User32.dll |