NotifyIcon Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Указывает компонент, который создает значок в области уведомлений. Этот класс не наследуется.
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
- Наследование
Примеры
В следующем примере кода демонстрируется использование NotifyIcon класса для отображения значка приложения в области уведомлений. В примере показано задание Iconсвойств , ContextMenu, Textи Visible и обработка DoubleClick события. Объект ContextMenu с элементом Exit назначается свойству NotifyIcon.ContextMenu , что позволяет пользователю закрыть приложение. При возникновении DoubleClick события форма приложения активируется путем вызова Form.Activate метода .
#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
Комментарии
Значки в области уведомлений — это ярлыки для процессов, выполняемых в фоновом режиме компьютера, таких как программа защиты от вирусов или управление громкостью. Эти процессы не поставляются с собственными пользовательскими интерфейсами. Класс NotifyIcon предоставляет способ программирования в этой функции. Свойство Icon определяет значок, который отображается в области уведомлений. Всплывающие меню значка адресуются с ContextMenu помощью свойства . Свойство Text присваивает текст подсказки. Чтобы значок отображал в области уведомлений, свойству Visible необходимо задать значение true
.
Конструкторы
NotifyIcon() |
Инициализирует новый экземпляр класса NotifyIcon. |
NotifyIcon(IContainer) |
Инициализирует новый экземпляр класса NotifyIcon с указанным контейнером. |
Свойства
BalloonTipIcon |
Возвращает или задает текст, отображаемый во всплывающей подсказке, связанной с NotifyIcon. |
BalloonTipText |
Возвращает или задает текст, отображаемый во всплывающей подсказке, связанной с NotifyIcon. |
BalloonTipTitle |
Возвращает или задает заголовок всплывающей подсказки, отображаемой в NotifyIcon. |
CanRaiseEvents |
Возвращает значение, показывающее, может ли компонент вызывать событие. (Унаследовано от Component) |
Container |
Возвращает объект IContainer, который содержит коллекцию Component. (Унаследовано от Component) |
ContextMenu |
Возвращает или задает контекстное меню для значка. |
ContextMenuStrip |
Получает или задает контекстное меню, связанное с NotifyIcon. |
DesignMode |
Возвращает значение, указывающее, находится ли данный компонент Component в режиме конструктора в настоящее время. (Унаследовано от Component) |
Events |
Возвращает список обработчиков событий, которые прикреплены к этому объекту Component. (Унаследовано от Component) |
Icon |
Возвращает или задает текущий значок. |
Site |
Получает или задает ISite объекта Component. (Унаследовано от Component) |
Tag |
Возвращает или задает объект, содержащий данные об объекте NotifyIcon. |
Text |
Возвращает или задает текст подсказки, отображаемый при наведении указателя мыши на значок в области уведомлений. |
Visible |
Возвращает или задает значение, определяющее видимость значка в области уведомлений на панели задач. |
Методы
CreateObjRef(Type) |
Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом. (Унаследовано от MarshalByRefObject) |
Dispose() |
Освобождает все ресурсы, занятые модулем Component. (Унаследовано от Component) |
Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые объектом Component, а при необходимости освобождает также управляемые ресурсы. (Унаследовано от Component) |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetLifetimeService() |
Устаревшие..
Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра. (Унаследовано от MarshalByRefObject) |
GetService(Type) |
Возвращает объект, представляющий службу, предоставляемую классом Component или классом Container. (Унаследовано от Component) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
InitializeLifetimeService() |
Устаревшие..
Получает объект службы времени существования для управления политикой времени существования для этого экземпляра. (Унаследовано от MarshalByRefObject) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
MemberwiseClone(Boolean) |
Создает неполную копию текущего объекта MarshalByRefObject. (Унаследовано от MarshalByRefObject) |
ShowBalloonTip(Int32) |
Отображает всплывающую подсказку на панели задач в течение указанного периода времени. |
ShowBalloonTip(Int32, String, String, ToolTipIcon) |
Отображает всплывающую подсказку с указанным заголовком, текстом и значком в панели задач в течение указанного времени. |
ToString() |
Возвращает объект String, содержащий имя Component, если оно есть. Этот метод не следует переопределять. (Унаследовано от Component) |
События
BalloonTipClicked |
Происходит при щелчке на всплывающую подсказку. |
BalloonTipClosed |
Происходит, когда пользователь закрывает всплывающую подсказку. |
BalloonTipShown |
Происходит, когда на экране отображается всплывающая подсказка. |
Click |
Возникает, когда пользователь щелкает значок в области уведомлений. |
Disposed |
Возникает при удалении компонента путем вызова метода Dispose(). (Унаследовано от Component) |
DoubleClick |
Возникает, когда пользователь дважды щелкает значок в области уведомлений на панели задач. |
MouseClick |
Происходит, когда пользователь щелкает NotifyIcon кнопкой мыши. |
MouseDoubleClick |
Происходит, когда пользователь дважды щелкает NotifyIcon кнопкой мыши. |
MouseDown |
Происходит, когда пользователь нажимает кнопку мыши, а указатель мыши находится на значке в области уведомлений панели задач. |
MouseMove |
Происходит, когда пользователь перемещает мышь в то время, когда указатель мыши находится на значке в области уведомлений панели задач. |
MouseUp |
Происходит, когда пользователь отпускает кнопку мыши, а указатель мыши находится на значке в области уведомлений панели задач. |