目次 - 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