目次 - API(機能別) - マウス - SDL_GetMouseState

# SDL_GetMouseState

現在のマウスの状態を得る

## 構文

`Uint32 SDL_GetMouseState(int* x, int* y)`

## 引数

x | フォーカスのあるウィンドウからの相対X座標を代入するポインタ
y | フォーカスのあるウィンドウからの相対Y座標を代入するポインタ

## 戻り値

現在のボタンのビットマスクを戻す

## サンプルコード

``

    int x, y;
    Uint32 buttons;

    SDL_PumpEvents();  // 最新のマウスの状態を確実に得る

    buttons = SDL_GetMouseState(&x, &y);

    SDL_Log("マウスカーソルの座標は %d, %d", x, y);
    if ((buttons & SDL_BUTTON_LMASK) != 0) {
        SDL_Log("マウスボタン1(左)が押された");
    }

## 詳細

現在のボタンの状態は, 戻り値のビットマスクで, SDL_BUTTON(X)マクロでチェックできる (通常はX=1が左, 2が中央, 3が右). そして, 選択したフォーカスのあるウィンドウからの相対座標はxとyに代入される. xとyにはNULLを渡すことができる.

## バージョン

SDL 2.0.0以降

## 関連項目(関数)

SDL_GetGlobalMouseState
SDL_GetRelativeMouseState
SDL_PumpEvents

## SDL Wikiへのリンク

SDL_GetMouseState - SDL Wiki