カーソルを変更する

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())
	{
		
	}
}