カーソル位置の取得

BOOL GetCursorPos( LPPOINT lpPoint );

マウスカーソルの現在の位置を、スクリーン座標で取得します。

lpPointカーソル位置をスクリーン座標で受け取るPOINT構造体を指すポインタ

マウスカーソルの位置は常にスクリーンスクリーン座標で与えられます。
マウスカーソルが表示されているウィンドウのマッピングモードには影響されません。
スクリーン座標をクライアント座標に変換するには、ScreenToClient()関数を使います。

BOOL ScreenToClient(
HWND hWnd,
LPPOINT lpPoint
);

hWndウィンドウのハンドルを指定します。このウィンドウのクライアント座標が変換に利用されます。
lpPoint変換されるスクリーン座標が入ったPOINT構造体へのポインタを指定します。関数が成功すると、この構造体にクライアント座標が格納されます。

クライアント座標は、ウィンドウのクライアント領域の左上隅を(0,0)とする座標系です。


POINT point;
GetCursorPos( &point );
ScreenToClient( hWnd, &point );

Windows > 入力処理 | comments (0) | trackbacks (0)