前回はランチャーアプリを作成しました。ところでランチャーアプリはパソコンを使用しているあいだ、そのまま使い続けるものです。×ボタンを押しても終了させずタスクトレイのなかで小さくなってもらうためにはどうすればいいのでしょうか?

A、T、F? なんか変なソフトがありますが・・・

アプリをタスクトレイに表示させるためにはアイコンが必要です。アイコンを作成しました。

ランチャーアプリだから「L」ってオイっ!

デザイナからNotifyIconを追加。プロパティーIconを設定。

これで起動するとアイコンがタスクトレイに表示されます。

×ボタンをクリックするとFormClosingイベントが発生します。

Form1_FormClosing内に以下を書き込みます。

e.Cancel = true;
this.Visible = false;

これで×をクリックしても終了しないでフォームが見えなくなります。しかしそれだけでは不十分です。もう一度見えるようにする手段と、本当に終了させるための手段を用意する必要があります。

まず見えるようにする方法。

次に終了させる方法。

ボタンを追加して、

Application.Exit()を実行してもForm1_FormClosing内にかかれている処理が実行させるだけなので終了できません。そこでフィールド変数 IsEndを用意してtrueに変更してIsEnd==trueの場合はそのまま終了させるようにしています。