1. ホーム
  2. c++

[解決済み] 現在のカーソル位置の取得

2022-02-25 22:32:23

質問

ウィンドウの現在のマウスポジションを取得し、2つの変数に代入したい。 xy (画面全体ではなく、ウィンドウに対する相対座標)。

Win32、C++を使用しています。

ついでに質問ですが、カーソルの非表示/非表示解除はどのように行うのでしょうか?

解決方法は?

カーソル位置の取得は GetCursorPos .

POINT p;
if (GetCursorPos(&p))
{
    //cursor position now in p.x and p.y
}

スクリーン座標を基準にしたカーソル位置が返されます。 呼び出し ScreenToClient を使用して、ウィンドウの座標にマッピングします。

if (ScreenToClient(hwnd, &p))
{
    //p.x and p.y are now relative to hwnd's client area
}


カーソルの表示/非表示を切り替えるには ShowCursor .

ShowCursor(FALSE);//hides the cursor
ShowCursor(TRUE);//shows it again

カーソルを隠すためのすべての呼び出しが、再びカーソルを表示するための呼び出しと一致することを確認する必要があります。