WM_LBUTTONDOWN

WM_LBUTTONDOWNは、マウスの左ボタンが押されたときに発生するウィンドウメッセージ・・・。

WM_LBUTTONDOWN message (Windows)

これまでもマウスの左クリック時の処理で使ったが、wParamを使うとどのキーを押したかがわかるし、lParamでマウスカーソルの位置がわかる・・・。

今回は左クリックしたときのマウスカーソルの位置を表示する・・・。

座標(x, y)はスタティック変数にして、

lParamの、下位16ビットはマウスカーソルのx座標、上位16ビットはy座標になっている・・・。

下位16ビットはLOWORDマクロ、上位16ビットはHIWORDマクロを使って取得できる・・・。

でそのあとInvalidateRectで画面更新を要求する・・・。

あとは、WM_PAINT時にTextOutで(x, y)を出力・・・。

実行すると、

f:id:BG1:20150328232957p:plain

最初は、(0, 0)だが、
いろんなところを左クリックしてみると、

f:id:BG1:20150328233033p:plain

座標がどんどん切り替わるのがわかる・・・。

Sample/WM_LBUTTONDOWN.cpp at master · bg1bgst333/Sample · GitHub