専用 icon を設定

Window(Form)に専用の icon を設定します。

前田稔(Maeda Minoru)の超初心者のプログラム入門

プログラムの説明

  1. このプロジェクトは Windows 8.1(Update 版) & Visual Studio 2005 で開発しています。
    大きな違いはありませんが、開発環境が変われば多少説明と異なる場合があります。
    自動生成を使って、プロジェクトを作成して下さい。
    詳細は 自動生成を使って Form を作成する を参照して下さい。
    プロジェクト名は、規定値で WindowsApplication1 になっています。
  2. 専用の Icon を作成して、プロジェクトのフォルダに格納して下さい。
    Icon 画像を作成するツールは、ネットから無料でダウンロード出来ます。
  3. プロジェクトのソリューションブラウザから、Properties を右クリックして[開く(O)]を実行します。
    Properties が作成されていないとき(空から構築など)は、プロジェクト名を右クリックしてプロパティを表示します。
    プロパティウインドウの[アイコン(C)]は(既定のアイコン)になっています。
    (既定のアイコン)の右端をクリックしてアイコンを選択します。

  4. コンパイルすると、作成された実行プログラムにアイコンが設定されています。
    プロジェクトフォルダーの \bin\Debug\WindowsApplication1.exe を確認して下さい。
  5. この段階では、デザイン表示や実行プログラムのアイコンは既定値のままです。
  6. プロジェクトのデザイン画面から Form を選択してプロパティを表示します。
    プロパティをスクロールして Icon の位置に設定します。
    Icon のプロパティから右端をクリックしてアイコンを選択します。
    デザイン画面のアイコン表示が変わり、実行プログラムのアイコンも設定されます。
    Memo2 アプリでアイコンを設定したときの画像です。(CSForm.cs の[デザイン]を選択します)

  7. 普通はこれでアイコンが設定できると思うのですが、空のプロジェクトから構築した場合など、デザイン画面のアイコンは設定されても、プログラムを実行すると既定のままのケースがあります。
    原因はリソースとしてアイコンは組み込まれているのですが、それを取得して Form に表示するコードが抜けていることが考えられます。
    Form1 の Constructor(または InitializeComponent)に次のコードが書かれているか調べて下さい。
        System.ComponentModel.ComponentResourceManager resources =
            new System.ComponentModel.ComponentResourceManager(typeof(Form1));
        this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));
    
    抜けているときは追加して下さい。
  8. Visual Studio の次のバージョンとして Resources Class を使う方法が提供されています。
    Properties\Resources.Designer.cs が作成されているときこの方法が使えます。
    イメージ画像と同様にアイコンも扱うことが出来ます。
    今後のことを考えると、こちらの方が適しているかも知れません。
    詳細は リソースで取り込んだイメージを描画する を参照して下さい。
  9. それでもうまく行かないときは、直接アイコンを入力して Form に設定するソースコードを書きます。
    Constructor の Form の生成が終わった後にソースコード追加して下さい。
    "C:\TMP\myapp.ico" がアイコンの画像ファイルです。
        Icon    icon;
    
        icon = new Icon(@"C:\TMP\myapp.ico");
        this.Icon = icon;
    
    これで大抵の場合実行プログラムにアイコンが設定されるはずです。

超初心者のプログラム入門(C# Frame Work)