アイコンを変更する

Siv3D Advent Calendar 2013, 19 日目の記事です。
今日は December 2013 の新機能、アプリケーションのアイコンを変更する機能を紹介します。

アプリケーションのデフォルトのアイコンは、プロジェクトフォルダにある icon.ico を新しいアイコンに置き換えることで変更できます。

実行時にアイコンを変更する場合は Window::SetIcon(Image) を使います。アイコンに使える画像のサイズは 32x32 で、それ以外の場合は自動で拡大縮小されます。
クリックされた回数をアイコンに表示させてみましょう。

# include <Siv3D.hpp>

void Main()
{
	const Font font(18);
	
	Image image(64, 64, Palette::White);

	int count = 0;

	while (System::Update())
	{
		if (Input::MouseL.clicked)
		{
			++count;

			image.fill(Palette::White);

			Circle(32, 32, 28).write(image, Palette::Seagreen);

			font.writeCenter(image, Format(count), { 32, 32 }, Palette::White);

			Window::SetIcon(image);
		}
	}
}

数フレームごとにアイコンを変更すればアニメーションもできます。

Skype のアイコンのように、何らかの情報をアイコンで通知するといった使い方もできるでしょう。