方法 : ショートカット メニューを Windows フォーム NotifyIcon コンポーネントに関連付ける
更新 : 2007 年 11 月
メモ : |
---|
MenuStrip と ContextMenuStrip は、以前のバージョンの MainMenu コントロールおよび ContextMenu コントロールに代わると共に追加の機能を提供しますが、MainMenu および ContextMenu は、下位互換性を保つ目的および将来使用する目的で、必要に応じて保持できます。 |
NotifyIcon コンポーネントは、タスクバーの状態通知領域に 1 つのアイコンを表示します。一般に、アプリケーションでは、このアイコンを右クリックすると、アイコンに対応するアプリケーションにコマンドを送信できるようになっています。NotifyIcon コンポーネントに ContextMenu コンポーネントを関連付けると、この機能をアプリケーションに追加できます。
メモ : |
---|
起動時にアプリケーションを最小化し、NotifyIcon コンポーネントのインスタンスをタスクバーに表示する場合は、メイン フォームの WindowState プロパティを Minimized に設定し、NotifyIcon コンポーネントの Visible プロパティを必ず true に設定します。 |
デザイン時に、NotifyIcon コンポーネントにショートカット メニューを関連付けるには
フォームに NotifyIcon コンポーネントを追加し、Icon や Visible などの重要なプロパティを設定します。
詳細については、「方法 : Windows フォームの NotifyIcon コンポーネントによってタスクバーにアプリケーション アイコンを追加する」を参照してください。
Windows フォームに ContextMenu コンポーネントを追加します。
実行時に使用できるようにするコマンドを表すメニュー項目をショートカット メニューに追加します。ここで、メニュー項目にアクセス キーなどのメニュー機能拡張を追加することもできます。
追加したショートカット メニューに NotifyIcon コンポーネントの ContextMenu プロパティを設定します。
このプロパティを設定すると、タスク バーのアイコンがクリックされたときにショートカット メニューが表示されるようになります。
プログラムで NotifyIcon コンポーネントにショートカット メニューを関連付けるには
アプリケーションに必要なすべてのプロパティ (NotifyIcon コンポーネントについて Icon プロパティと Visible プロパティ、ContextMenu コンポーネントについてはメニュー項目) を設定して NotifyIcon クラスと ContextMenu クラスのインスタンスを作成します。
追加したショートカット メニューに NotifyIcon コンポーネントの ContextMenu プロパティを設定します。
このプロパティを設定すると、タスク バーのアイコンがクリックされたときにショートカット メニューが表示されるようになります。
メモ : 次のコード例では、基本的なメニュー構造を作成します。配置するアプリケーションに合わせてメニューの選択肢をカスタマイズする必要があります。さらに、これらのメニュー項目に対する Click イベントを処理するコードも記述する必要があります。
Public ContextMenu1 As New ContextMenu Public NotifyIcon1 As New NotifyIcon Public Sub CreateIconMenuStructure() ' Add menu items to shortcut menu. ContextMenu1.MenuItems.Add("&Open Application") ContextMenu1.MenuItems.Add("S&uspend Application") ContextMenu1.MenuItems.Add("E&xit") ' Set properties of NotifyIcon component. NotifyIcon1.Icon = New System.Drawing.Icon _ (System.Environment.GetFolderPath _ (System.Environment.SpecialFolder.Personal) _ & "\Icon.ico") NotifyIcon1.Text = "Right-click me!" NotifyIcon1.Visible = True NotifyIcon1.ContextMenu = ContextMenu1 End Sub
参照
処理手順
方法 : Windows フォームの NotifyIcon コンポーネントによってタスクバーにアプリケーション アイコンを追加する
参照
NotifyIcon コンポーネントの概要 (Windows フォーム)