.NET Frameworkでは、NotifyIconコンポーネントを使って簡単にタスクトレイ(タスクバーの通知領域)にアイコンを表示することができます。ここでは、NotifyIconコンポーネントを使ってタスクトレイにアイコンを表示する簡単な例を、Visual Studioのフォームデザイナを使った方法と使わない方法に分けて説明します。
以下に、Visual Studioのフォームデザイナを使ってタスクトレイにアイコンを表示する手順を説明します。
次に、Visual Studioのフォームデザイナを使わずに、上記とほぼ同じことを行うコードの例を示します。このコードはフォームクラス内(例えば、Form1クラス内)に書かれているものとします。
Private NotifyIcon1 As System.Windows.Forms.NotifyIcon 'フォームのLoadイベントハンドラ Private Sub Form1_Load(sender As Object, e As EventArgs) _ Handles MyBase.Load 'NotifyIconオブジェクトを作成する 'Me.componentsが存在しないならば、省略する Me.NotifyIcon1 = New System.Windows.Forms.NotifyIcon(Me.components) 'アイコンを設定する Me.NotifyIcon1.Icon = New System.Drawing.Icon("C:\test\app.ico") 'NotifyIconをタスクトレイに表示する Me.NotifyIcon1.Visible = True 'アイコンの上にマウスポインタを移動した時に表示される文字列 Me.NotifyIcon1.Text = "NotifyIcon1" 'アイコンを右クリックしたときに表示するコンテキストメニュー 'ContextMenuStrip1はすでに用意されているものとする Me.NotifyIcon1.ContextMenuStrip = Me.ContextMenuStrip1 'Clickイベントハンドラを追加する AddHandler Me.NotifyIcon1.Click, _ New EventHandler(AddressOf NotifyIcon1_Click) End Sub Private Sub NotifyIcon1_Click(sender As Object, e As EventArgs) System.Windows.Forms.MessageBox.Show("アイコンがクリックされました。") End Sub
private System.Windows.Forms.NotifyIcon NotifyIcon1; //フォームのLoadイベントハンドラ private void Form1_Load(object sender, EventArgs e) { //NotifyIconオブジェクトを作成する //this.componentsが存在しないならば、省略する this.NotifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components); //アイコンを設定する this.NotifyIcon1.Icon = new System.Drawing.Icon(@"C:\test\app.ico"); //NotifyIconをタスクトレイに表示する this.NotifyIcon1.Visible = true; //アイコンの上にマウスポインタを移動した時に表示される文字列 this.NotifyIcon1.Text = "NotifyIcon1"; //アイコンを右クリックしたときに表示するコンテキストメニュー //ContextMenuStrip1はすでに用意されているものとする this.NotifyIcon1.ContextMenuStrip = this.ContextMenuStrip1; //Clickイベントハンドラを追加する this.NotifyIcon1.Click += new EventHandler(NotifyIcon1_Click); } private void NotifyIcon1_Click(object sender, EventArgs e) { System.Windows.Forms.MessageBox.Show("アイコンがクリックされました。"); }