WM_NCPOINTERDOWN メッセージ
ポインターがウィンドウの非クライアント領域に接触したときに投稿されます。 メッセージは、ポインターが接触したウィンドウを対象とします。 ポインターは暗黙的にウィンドウにキャプチャされるため、ウィンドウは接触が中断されるまでポインターの入力を受け取り続けます。
ウィンドウがこのポインターを取り込んだ場合、このメッセージは投稿されません。 代わりに、このポインターを取り込んだウィンドウに WM_POINTERDOWN が投稿されます。
![重要]
デスクトップ アプリは DPI に対応している必要があります。 アプリが DPI 対応でない場合、DPI 仮想化により、ポインター メッセージと関連する構造に含まれる画面座標が不正確に表示される可能性があります。 DPI 仮想化では、DPI 対応ではなく、既定でアクティブな (ユーザーが無効にすることができます) アプリケーションに対して自動スケーリングのサポートを提供します。 詳細については、「高 DPI Win32 アプリケーションの書き込み」を参照してください。
#define WM_NCPOINTERDOWN 0x0242
パラメーター
-
wParam
-
ポインター識別子と追加情報が含まれます。 この情報を取得するには、次のマクロを使用します。
GET_POINTERID_WPARAM(wParam): ポインター識別子。
HIWORD(wParam): WM_NCHITTEST メッセージの処理からヒット テスト値が返されました。
-
lParam
-
ポインターのポイント位置が含まれます。
Note
ポインターは非単純領域経由でデバイスと接触する可能性があるため、このポイント位置では、より複雑なポインター領域が簡略化される可能性があります。 可能な限り、アプリケーションではポイント位置ではなく、完全なポインター領域情報を使用する必要があります。
ポイントの物理的な画面座標を取得するには、次のマクロを使用します。
- GET_X_LPARAM(lParam): x (水平点) 座標。
- GET_Y_LPARAM(lParam): y (垂直点) 座標。
戻り値
アプリケーションでこのメッセージを処理する場合は、0 を返す必要があります。
アプリケーションがこのメッセージを処理しない場合は、DefWindowProc を呼び出す必要があります。
解説
アプリケーションがこのメッセージを処理しない場合、DefWindowProc は、メッセージに含まれるヒット テストの結果に応じて、1 つ以上のシステム アクションを実行する可能性があります。 通常、アプリケーションがこのメッセージを処理する必要はありません。
要件
要件 | Value |
---|---|
サポートされている最小のクライアント |
Windows 8 [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows Server 2012 [デスクトップ アプリのみ] |
Header |
|