![]() (Sorry, this site is Japanese only)
チョイ古っ
|
Last Update : 2006/03/29 新規作成 機能 実行中アプリケーションをタスクトレイに格納する 対象 フォームアプリケーション 名前空間 − サンプル言語 C#2005 サンプル ボタンを1つ配置(button1)したフォームを1つ用意し(Form1)、そのボタンが押されたらタスクトレイにアイコンを格納し、フォームを見えなくします。 コードの記述に入る前に、フォームのデザイン画面でいくつかの設定が必要です。 ・contextMenuStripを追加します。 ただし、このメニューをデザイン時にフォーム上で定義したからといって、実行時にフォーム上に現れるわけではありません。次の「notifyIcon」に関連して表示されます。(フォーム上にメニューを追加したい場合はmenuStripを使用します。旧バージョンのサンプルはこちら) ・notifyIconを追加します。 プロパティ画面のContextMenuStrip項目を通じて、上記で設定したcontextMenuStripとnitifyIconを関連付けます。これにより、アイコンを右クリックするとマウスポインタの位置にメニューが表示されます。 タスクトレイに表示したいアイコンは、Icon項目により指定します。また、アイコン上にマウスポインタを置くと表示される文言はText項目により指定可能です。今回はボタン押下によりタスクトレイにアイコンを格納します。起動時にはアイコンを格納しないので、Visibleの初期値はFalseとしておきます。 ここまで準備ができたらフォームのクラスに処理を記述していきます。
上記のそれぞれの処理は以下のとおりです。 10〜14行目 ボタン押下に応じてアイコンを表示し、フォームを非表示にします。 15〜19行目 アイコンをダブルクリックすることにより、フォームを表示してアイコンを非表示にします。 20〜24行目 アイコンを右クリックして表示されるメニューのうち、「取り出す」を選択した際にフォームを表示し、アイコンを非表示にします。 25〜28行目 アイコンを右クリックして表示されるメニューのうち、「終了」を選択した際にフォームを閉じてアプリケーションを終了します。 C#2005ではこれだけの処理です(VB2005も同様)。繰り返しですが、VB6に比べる非常に簡単ですね。 |