Condividi tramite


NotifyIcon Classe

Definizione

Specifica un componente che crea un'icona nell'area di notifica. Questa classe non può essere ereditata.

public ref class NotifyIcon sealed : System::ComponentModel::Component
public sealed class NotifyIcon : System.ComponentModel.Component
type NotifyIcon = class
    inherit Component
Public NotInheritable Class NotifyIcon
Inherits Component
Ereditarietà

Esempio

Nell'esempio di codice seguente viene illustrato l'uso della NotifyIcon classe per visualizzare un'icona per un'applicazione nell'area di notifica. Nell'esempio viene illustrata l'impostazione delle Iconproprietà , ContextMenuText, e Visible e e la gestione dell'eventoDoubleClick. Un ContextMenu oggetto con un elemento Exit su di esso viene assegnato alla NotifyIcon.ContextMenu proprietà , che consente all'utente di chiudere l'applicazione. Quando si verifica l'evento DoubleClick , il modulo dell'applicazione viene attivato chiamando il Form.Activate metodo .

#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 ref 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 = gcnew System::ComponentModel::Container;
      this->contextMenu1 = gcnew System::Windows::Forms::ContextMenu;
      this->menuItem1 = gcnew System::Windows::Forms::MenuItem;
      
      // Initialize contextMenu1
      array<System::Windows::Forms::MenuItem^>^temp0 = {this->menuItem1};
      this->contextMenu1->MenuItems->AddRange( temp0 );
      
      // Initialize menuItem1
      this->menuItem1->Index = 0;
      this->menuItem1->Text = "E&xit";
      this->menuItem1->Click += gcnew System::EventHandler( this, &Form1::menuItem1_Click );
      
      // Set up how the form should be displayed.
      this->ClientSize = System::Drawing::Size( 292, 266 );
      this->Text = "Notify Icon Example";
      
      // Create the NotifyIcon.
      this->notifyIcon1 = gcnew System::Windows::Forms::NotifyIcon( this->components );
      
      // The Icon property sets the icon that will appear
      // in the systray for this application.
      notifyIcon1->Icon = gcnew System::Drawing::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 += gcnew System::EventHandler( this, &Form1::notifyIcon1_DoubleClick );
   }

protected:
   ~Form1()
   {
      if ( components != nullptr )
      {
         delete components;
      }
   }

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( gcnew Form1 );
}
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();
    }
}
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

    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.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
    
    Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
        ' Clean up any components being used.
        If disposing Then
            If (components IsNot Nothing) Then
                components.Dispose()
            End If
        End If
        MyBase.Dispose(disposing)
    End Sub

    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

Commenti

Le icone nell'area di notifica sono collegamenti a processi in esecuzione in background di un computer, ad esempio un programma di protezione antivirus o un controllo del volume. Questi processi non sono dotati di interfacce utente personalizzate. La NotifyIcon classe fornisce un modo per programmare in questa funzionalità. La Icon proprietà definisce l'icona visualizzata nell'area di notifica. I menu a comparsa per un'icona vengono indirizzati con la ContextMenu proprietà . La proprietà assegna il testo della Text descrizione comando. Affinché l'icona venga visualizzata nell'area di notifica, la Visible proprietà deve essere impostata su true.

Costruttori

Nome Descrizione
NotifyIcon()

Inizializza una nuova istanza della classe NotifyIcon.

NotifyIcon(IContainer)

Inizializza una nuova istanza della NotifyIcon classe con il contenitore specificato.

Proprietà

Nome Descrizione
BalloonTipIcon

Ottiene o imposta l'icona da visualizzare sulla punta del fumetto associata all'oggetto NotifyIcon.

BalloonTipText

Ottiene o imposta il testo da visualizzare sulla punta del fumetto associata all'oggetto NotifyIcon.

BalloonTipTitle

Ottiene o imposta il titolo della descrizione fumetto visualizzata in NotifyIcon.

CanRaiseEvents

Ottiene un valore che indica se il componente può generare un evento.

(Ereditato da Component)
Container

Ottiene l'oggetto IContainer contenente l'oggetto Component.

(Ereditato da Component)
ContextMenu

Ottiene o imposta il menu di scelta rapida per l'icona.

ContextMenuStrip

Ottiene o imposta il menu di scelta rapida associato all'oggetto NotifyIcon.

DesignMode

Ottiene un valore che indica se è Component attualmente in modalità progettazione.

(Ereditato da Component)
Events

Ottiene l'elenco dei gestori eventi associati a questo Componentoggetto .

(Ereditato da Component)
Icon

Ottiene o imposta l'icona corrente.

Site

Ottiene o imposta l'oggetto ISite dell'oggetto Component.

(Ereditato da Component)
Tag

Ottiene o imposta un oggetto che contiene dati sull'oggetto NotifyIcon.

Text

Ottiene o imposta il testo della descrizione comando visualizzato quando il puntatore del mouse si posiziona su un'icona dell'area di notifica.

Visible

Ottiene o imposta un valore che indica se l'icona è visibile nell'area di notifica della barra delle applicazioni.

Metodi

Nome Descrizione
CreateObjRef(Type)

Crea un oggetto che contiene tutte le informazioni pertinenti necessarie per generare un proxy utilizzato per comunicare con un oggetto remoto.

(Ereditato da MarshalByRefObject)
Dispose()

Rilascia tutte le risorse usate da Component.

(Ereditato da Component)
Dispose(Boolean)

Rilascia le risorse non gestite usate da Component e, facoltativamente, rilascia le risorse gestite.

(Ereditato da Component)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetLifetimeService()
Obsoleti.

Recupera l'oggetto servizio di durata corrente che controlla i criteri di durata per questa istanza.

(Ereditato da MarshalByRefObject)
GetService(Type)

Restituisce un oggetto che rappresenta un servizio fornito da Component o da Container.

(Ereditato da Component)
GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
InitializeLifetimeService()
Obsoleti.

Ottiene un oggetto servizio di durata per controllare i criteri di durata per questa istanza.

(Ereditato da MarshalByRefObject)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
MemberwiseClone(Boolean)

Crea una copia superficiale dell'oggetto corrente MarshalByRefObject .

(Ereditato da MarshalByRefObject)
ShowBalloonTip(Int32, String, String, ToolTipIcon)

Visualizza un suggerimento per il fumetto con il titolo, il testo e l'icona specificati nella barra delle applicazioni per il periodo di tempo specificato.

ShowBalloonTip(Int32)

Visualizza un suggerimento fumetto nella barra delle applicazioni per il periodo di tempo specificato.

ToString()

Restituisce un oggetto String contenente il nome dell'oggetto Component, se presente. Questo metodo non deve essere sottoposto a override.

(Ereditato da Component)

Eventi

Nome Descrizione
BalloonTipClicked

Si verifica quando si fa clic sulla punta del fumetto.

BalloonTipClosed

Si verifica quando il suggerimento per il fumetto viene chiuso dall'utente.

BalloonTipShown

Si verifica quando viene visualizzata la descrizione a forma di fumetto sullo schermo.

Click

Si verifica quando l'utente fa clic sull'icona nell'area di notifica.

Disposed

Si verifica quando il componente viene eliminato da una chiamata al Dispose() metodo .

(Ereditato da Component)
DoubleClick

Si verifica quando l'utente fa doppio clic sull'icona nell'area di notifica della barra delle applicazioni.

MouseClick

Si verifica quando l'utente fa clic su un NotifyIcon oggetto con il mouse.

MouseDoubleClick

Si verifica quando l'utente fa doppio clic su NotifyIcon con il mouse.

MouseDown

Si verifica quando l'utente preme il pulsante del mouse mentre il puntatore si trova sull'icona nell'area di notifica della barra delle applicazioni.

MouseMove

Si verifica quando l'utente sposta il mouse mentre il puntatore si trova sull'icona nell'area di notifica della barra delle applicazioni.

MouseUp

Si verifica quando l'utente rilascia il pulsante del mouse mentre il puntatore si trova sopra l'icona nell'area di notifica della barra delle applicazioni.

Si applica a