次の方法で共有


WM_XBUTTONDOWN メッセージ

カーソルがウィンドウのクライアント領域にあるときに、ユーザーがXBUTTON1またはXBUTTON2を押したときに投稿されます。 マウスがキャプチャされていない場合、メッセージはカーソルの下のウィンドウに投稿されます。 それ以外の場合、メッセージは、マウスをキャプチャしたウィンドウに投稿されます。

ウィンドウは、WindowProc 関数を介してこのメッセージを受信します。

#define WM_XBUTTONDOWN                  0x020B

パラメーター

wParam を する

下位ワードは、さまざまな仮想キーがダウンしているかどうかを示します。 次の値のうち 1 つ以上を指定できます。

価値 意味
MK_CONTROL
0x0008
Ctrl キーがダウンしています。
MK_LBUTTON
0x0001
マウスの左ボタンが下に表示されます。
MK_MBUTTON
0x0010
マウスの中央ボタンが下にあります。
MK_RBUTTON
0x0002
マウスの右ボタンが下に表示されます。
MK_SHIFT
0x0004
Shift キーがダウンしています。
MK_XBUTTON1
0x0020
XBUTTON1がダウンしています。
MK_XBUTTON2
0x0040
XBUTTON2がダウンしています。

高次ワードは、どのボタンがクリックされたかを示します。 次のいずれかの値を指定できます。

価値 意味
XBUTTON1
0x0001
XBUTTON1がクリックされました。
XBUTTON2
0x0002
XBUTTON2がクリックされました。

lParam

下位ワードは、カーソルの x 座標を指定します。 座標は、クライアント領域の左上隅を基準にしています。

高次ワードは、カーソルの y 座標を指定します。 座標は、クライアント領域の左上隅を基準にしています。

戻り値

アプリケーションがこのメッセージを処理する場合は、TRUE返す必要があります。 戻り値の処理の詳細については、「解説」セクションを参照してください。

備考

Windows では、左、中央、右の 5 つのボタンに加えて、XBUTTON1とXBUTTON2と呼ばれる 2 つの追加ボタンを備えたマウスがサポートされています。 XBUTTON1ボタンとXBUTTON2 ボタンは、多くの場合、マウスの側面 (ベースの近く) にあります。 これらの追加のボタンはすべてのマウスに存在するわけではありません。 存在する場合、多くの場合、XBUTTON1ボタンとXBUTTON2 ボタンは、Web ブラウザーでの前方ナビゲーションや後方ナビゲーションなど、アプリケーション関数にマップされます。

次のコードを使用して、wParam パラメーターの情報を取得します。

fwKeys = GET_KEYSTATE_WPARAM (wParam); 
fwButton = GET_XBUTTON_WPARAM (wParam);

次のコードを使用して、水平方向と垂直方向の位置を取得します。

xPos = GET_X_LPARAM(lParam); 
yPos = GET_Y_LPARAM(lParam); 

前述のように、x 座標は戻り値の下位 短い になります。y 座標は高次 短い にあります (複数のモニターを持つシステムでは負の値を取ることができるので、どちらも 符号付き 値を表します)。 戻り値が変数に割り当てられている場合は、MAKEPOINTS マクロを使用して、戻り値から POINTS 構造体を取得できます。 GET_X_LPARAM または GET_Y_LPARAM マクロを使用して、x 座標または y 座標を抽出することもできます。

大事な

カーソル位置の x 座標と y 座標を抽出するには、LOWORD または HIWORD マクロを しないでください。これらのマクロは、複数のモニターを持つシステムで正しくない結果を返します。 複数のモニターを持つシステムは、負の x 座標と y 座標を持つ場合があり、LOWORD と HIWORD を 座標を符号なし数量として扱います。

WM_LBUTTONDOWNWM_MBUTTONDOWN、および WM_RBUTTONDOWN メッセージとは異なり、アプリケーションは処理する場合、このメッセージから TRUE 返す必要があります。 これにより、Windows 2000 より前の Windows システムでこのメッセージをシミュレートするソフトウェアは、ウィンドウ プロシージャがメッセージを処理したか、DefWindowProc 呼び出して処理するかを判断できます。

必要条件

要件 価値
サポートされる最小クライアント
Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小サーバー
Windows 2000 Server [デスクトップ アプリのみ]
ヘッダ
Winuser.h (Windowsx.h を含む)

関連項目

リファレンス

GET_KEYSTATE_WPARAM

GET_X_LPARAM

GET_XBUTTON_WPARAM

GET_Y_LPARAM

GetCapture の

SetCapture の

WM_XBUTTONDBLCLK

WM_XBUTTONUP

概念

マウス入力 の

その他のリソース を する

MAKEPOINTS を する

ポイント を する