WisdomSoft - for your serial experiences.

5.4 半透明フォーム

フォームを透明にして背景と合成します。Windows フォームでは Form オブジェクトの Opacity プロパティを設定するだけで、簡単に半透明のフォームを表示できます。

5.4.1 フォームを背景と合成する

特別なケースを除けばフォームを半透明にしたいという要求はないと思われます。しかし、一部の機能において、一時的にフォームを半透明にすると便利になることがあります。例えば、数多くのウィンドウを表示しているような状態で、ウィンドウの切り替えや移動を行うときに、対象ウィンドウを一時的に半透明にすることでウィンドウに隠されている部分を確認することができます。

フォームを半透明にするには、フォームがどのくらい不透明なのかを表す Opacity プロパティを設定します。

Form クラス Opacity プロパティ
public double Opacity { get; set; }

Opacity プロパティは、フォームの不透明度を double 型で指定します。値が 0 であれば完全に透明である 0% を、1.0 であれば完全に不透明である 100% を表します。Opacity が 0.5 であれば、フォームの背景とフォームを半分ずつブレンドします。

コード1
using System.Windows.Forms;

public class Test : Form
{
	static void Main() 
	{
		Form form = new Test();
		form.Opacity = 0.5;
		Application.Run(form);
	}
}
実行結果
コード1 実行結果

コード1は、生成した Form オブジェクトの Opacity プロパティを 0.5 に設定しています。そのため、このウィンドウは半透明になり、ウィンドウの背景ピクセルと合成されます。

ただし、この透明なフォームは Windows 2000 以降で追加された機能です。Windows 98 など半透明なフォームをサポートしていないシステムで実行した場合、フォームは Opacity プロパティの設定値にかかわらず不透明となります。