次の方法で共有


NotifyIcon.ContextMenu プロパティ

アイコンのショートカット メニューを取得または設定します。

Public Property ContextMenu As ContextMenu
[C#]
public ContextMenu ContextMenu {get; set;}
[C++]
public: __property ContextMenu* get_ContextMenu();public: __property void set_ContextMenu(ContextMenu*);
[JScript]
public function get ContextMenu() : ContextMenu;public function set ContextMenu(ContextMenu);

プロパティ値

アイコンの ContextMenu 。既定値は null 参照 (Visual Basic では Nothing) です。

解説

タスクバーの状態通知領域のアイコンを右クリックすると、コンテキスト メニューが表示されます。ショートカット メニューは、ポップアップ メニューとも呼びます。

使用例

[Visual Basic, C#, C++] NotifyIcon クラスを使用して、アプリケーションのアイコンを通知領域内に表示する例を次に示します。この例では、 IconContextMenuTextVisible の各プロパティを設定して、 DoubleClick イベントを処理しています。 Exit 項目がある ContextMenu は、 NotifyIcon.ContextMenu プロパティに割り当てられ、ユーザーがアプリケーションを終了できるようにします。NotifyIcon. DoubleClick イベントが発生すると、アプリケーションのフォームは Form.Activate メソッドを呼び出すことによってアクティブになります。

 
Imports System
Imports System.Drawing
Imports System.Windows.Forms

Public NotInheritable Class Form1
    Inherits System.Windows.Forms.Form

    Private contextMenu1 As System.Windows.Forms.ContextMenu
    Friend WithEvents menuItem1 As System.Windows.Forms.MenuItem
    Friend WithEvents notifyIcon1 As System.Windows.Forms.NotifyIcon
    Private components As System.ComponentModel.IContainer

    <System.STAThread()> _
    Public Shared Sub Main()
        System.Windows.Forms.Application.Run(New Form1)
    End Sub 'Main

    Public Sub New()

        Me.components = New System.ComponentModel.Container
        Me.contextMenu1 = New System.Windows.Forms.ContextMenu
        Me.menuItem1 = New System.Windows.Forms.MenuItem

        ' Initialize contextMenu1
        Me.contextMenu1.MenuItems.AddRange(New System.Windows.Forms.MenuItem() _
                            {Me.menuItem1})

        ' Initialize menuItem1
        Me.menuItem1.Index = 0
        Me.menuItem1.Text = "E&xit"

        ' Set up how the form should be displayed.
        Me.AutoScaleBaseSize = New System.Drawing.Size(5, 13)
        Me.ClientSize = New System.Drawing.Size(292, 266)
        Me.Text = "Notify Icon Example"

        ' Create the NotifyIcon.
        Me.notifyIcon1 = New System.Windows.Forms.NotifyIcon(Me.components)

        ' The Icon property sets the icon that will appear
        ' in the systray for this application.
        notifyIcon1.Icon = New Icon("appicon.ico")

        ' The ContextMenu property sets the menu that will
        ' appear when the systray icon is right clicked.
        notifyIcon1.ContextMenu = Me.contextMenu1

        ' The Text property sets the text that will be displayed,
        ' in a tooltip, when the mouse hovers over the systray icon.
        notifyIcon1.Text = "Form1 (NotifyIcon example)"
        notifyIcon1.Visible = True
    End Sub 'New
    
    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
        ' Clean up any components being used.
        If disposing Then
            If Not (components Is Nothing) Then
                components.Dispose()
            End If
        End If
        MyBase.Dispose(disposing)
    End Sub 'Dispose

    Private Sub notifyIcon1_DoubleClick(Sender as object, e as EventArgs) handles notifyIcon1.DoubleClick
        ' Show the form when the user double clicks on the notify icon.

        ' Set the WindowState to normal if the form is minimized.
        if (me.WindowState = FormWindowState.Minimized) then _
            me.WindowState = FormWindowState.Normal

        ' Activate the form.
        me.Activate()
    end sub

    Private Sub menuItem1_Click(Sender as object, e as EventArgs) handles menuItem1.Click
        ' Close the form, which closes the application.
        me.Close()
    end sub

End Class 'Form1

[C#] 
using System;
using System.Drawing;
using System.Windows.Forms;

public class Form1 : System.Windows.Forms.Form
{
    private System.Windows.Forms.NotifyIcon notifyIcon1;
    private System.Windows.Forms.ContextMenu contextMenu1;
    private System.Windows.Forms.MenuItem menuItem1;
    private System.ComponentModel.IContainer components;

    [STAThread]
    static void Main() 
    {
        Application.Run(new Form1());
    }

    public Form1()
    {
        this.components = new System.ComponentModel.Container();
        this.contextMenu1 = new System.Windows.Forms.ContextMenu();
        this.menuItem1 = new System.Windows.Forms.MenuItem();

        // Initialize contextMenu1
        this.contextMenu1.MenuItems.AddRange(
                    new System.Windows.Forms.MenuItem[] {this.menuItem1});

        // Initialize menuItem1
        this.menuItem1.Index = 0;
        this.menuItem1.Text = "E&xit";
        this.menuItem1.Click += new System.EventHandler(this.menuItem1_Click);

        // Set up how the form should be displayed.
        this.ClientSize = new System.Drawing.Size(292, 266);
        this.Text = "Notify Icon Example";

        // Create the NotifyIcon.
        this.notifyIcon1 = new System.Windows.Forms.NotifyIcon(this.components);

        // The Icon property sets the icon that will appear
        // in the systray for this application.
        notifyIcon1.Icon = new Icon("appicon.ico");

        // The ContextMenu property sets the menu that will
        // appear when the systray icon is right clicked.
        notifyIcon1.ContextMenu = this.contextMenu1;

        // The Text property sets the text that will be displayed,
        // in a tooltip, when the mouse hovers over the systray icon.
        notifyIcon1.Text = "Form1 (NotifyIcon example)";
        notifyIcon1.Visible = true;

        // Handle the DoubleClick event to activate the form.
        notifyIcon1.DoubleClick += new System.EventHandler(this.notifyIcon1_DoubleClick);

    }

    protected override void Dispose( bool disposing )
    {
        // Clean up any components being used.
        if( disposing )
            if (components != null)
                components.Dispose();            

        base.Dispose( disposing );
    }

    private void notifyIcon1_DoubleClick(object Sender, EventArgs e) 
    {
        // Show the form when the user double clicks on the notify icon.

        // Set the WindowState to normal if the form is minimized.
        if (this.WindowState == FormWindowState.Minimized)
            this.WindowState = FormWindowState.Normal;

        // Activate the form.
        this.Activate();
    }

    private void menuItem1_Click(object Sender, EventArgs e) {
        // Close the form, which closes the application.
        this.Close();
    }
}

[C++] 
#using <mscorlib.dll>
#using <System.dll>
#using <System.Windows.Forms.dll>
#using <System.Drawing.dll>

using namespace System;
using namespace System::Drawing;
using namespace System::Windows::Forms;

public __gc class Form1 : public System::Windows::Forms::Form {
private:
   System::Windows::Forms::NotifyIcon*  notifyIcon1;
   System::Windows::Forms::ContextMenu*  contextMenu1;
   System::Windows::Forms::MenuItem*  menuItem1;
   System::ComponentModel::IContainer*  components;

public:
   Form1() {
      this->components = new System::ComponentModel::Container();
      this->contextMenu1 = new System::Windows::Forms::ContextMenu();
      this->menuItem1 = new System::Windows::Forms::MenuItem();

      // Initialize contextMenu1

      System::Windows::Forms::MenuItem* temp0 [] = {this->menuItem1};

      this->contextMenu1->MenuItems->AddRange(temp0);

      // Initialize menuItem1
      this->menuItem1->Index = 0;
      this->menuItem1->Text = S"E&xit";
      this->menuItem1->Click += new System::EventHandler(this, &Form1::menuItem1_Click);

      // Set up how the form should be displayed.
      this->ClientSize =  System::Drawing::Size(292, 266);
      this->Text = S"Notify Icon Example";

      // Create the NotifyIcon.
      this->notifyIcon1 = new System::Windows::Forms::NotifyIcon(this->components);

      // The Icon property sets the icon that will appear
      // in the systray for this application.
      notifyIcon1->Icon = new System::Drawing::Icon(S"appicon.ico");

      // The ContextMenu property sets the menu that will
      // appear when the systray icon is right clicked.
      notifyIcon1->ContextMenu = this->contextMenu1;

      // The Text property sets the text that will be displayed,
      // in a tooltip, when the mouse hovers over the systray icon.
      notifyIcon1->Text = S"Form1 (NotifyIcon example)";
      notifyIcon1->Visible = true;

      // Handle the DoubleClick event to activate the form.
      notifyIcon1->DoubleClick += new System::EventHandler(this, &Form1::notifyIcon1_DoubleClick);

   }

protected:
   void Dispose(bool disposing) {
      // Clean up any components being used.
      if (disposing)
         if (components != 0)
            components->Dispose();

      Form::Dispose(disposing);
   }

private:
   void notifyIcon1_DoubleClick(Object* /*Sender*/, EventArgs* /*e*/) {
      // Show the form when the user double clicks on the notify icon.

      // Set the WindowState to normal if the form is minimized.
      if (this->WindowState == FormWindowState::Minimized)
         this->WindowState = FormWindowState::Normal;

      // Activate the form.
      this->Activate();
   }

   void menuItem1_Click(Object* /*Sender*/, EventArgs* /*e*/) {
      // Close the form, which closes the application.
      this->Close();
   }
};

[STAThread]
int main() {
   Application::Run(new Form1());
}

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

NotifyIcon クラス | NotifyIcon メンバ | System.Windows.Forms 名前空間 | ContextMenu