カーソルを変更する
Siv3D Advent Calendar 2013, 23 日目の記事です。
今日はカーソルの表示や画像を切り替える方法を紹介します。
カーソルの表示/非表示
システムカーソルの表示/非表示を切り替えるには Window::ShowCursor(bool) を使います。このプログラムでは、画面の右半分にいるときにカーソル表示をオフにします。
# include <Siv3D.hpp> void Main() { while (System::Update()) { const bool show = Mouse::Pos().x < Window::Width() / 2; Window::ShowCursor(show); } }
カーソルの画像を変更する
Window::SetCursorTexture() を使うと指定したテクスチャを、
Window::SetCursorTextureRegion() を使うと指定したテクスチャの一部領域をカーソル画像にすることができます。
それぞれの第二引数は、カーソル画像と実際のカーソルの中心位置とのオフセットです。
設定したカーソルは常に最前面に描画されます。
# include <Siv3D.hpp> void Main() { const Texture texture(L"Example/Windmill.png"); Window::SetCursorTextureRegion(texture(100,100,50,50)); GUI gui(GUISkin::Default()); gui.addButton(L"OK", {L"OK"}); while (System::Update()) { } }