Элемент NotifyIcon

Последнее обновление: 31.10.2015

Элемент NotifyIcon позволяет задать значок, который будет отображаться при запуске приложения в панели задач.

Рассмотрим основные его свойства:

  • BallonTipIcon: иконка, которая будет использоваться на всплывающей подсказке. Это свойство может иметь следующие значения: None, Info, Warning, Error.

  • BalloonTipText: текст, отображаемый во всплывающей подсказке

  • BalloonTipTitle: загаловок всплывающей подсказки

  • ContextMenuStrip: устанавливает контекстное меню для объекта NotifyIcon

  • Icon: задает значок, который будет отображаться в системном трее

  • Text: устанавливает текст всплывающей подсказки, которая появляется при нахождении указателя мыши над значком

  • Visible: устанавливает видимость значка в системном трее

Чтобы добавить на форму NotifyIcon, перенесем данный элемент на форму с панели инструментов. После этого добавленный компонент NotifyIcon отобразится внизу дизайнера формы.

Затем зададим у NotifyIcon для свойства Icon какую-нибудь иконку в формате .ico. И также установим для свойства Visible значение true.

Далее также зададим у NotifyIcon для свойства Text какой-нибудь текст, например, "Показать форму". Этот текст отобразится при прохождении указателя мыши над значком NotifyIcon в системном трее.

Чтобы можно было открыть форму по клику на значок в трее, надо обработать событие Click у NotifyIcon. Поэтому в коде формы определим обработчик для этого события:

public partial class Form1 : Form
{   
    public Form1()
    {
        InitializeComponent();
		
        this.ShowInTaskbar = false;
		notifyIcon1.Click += notifyIcon1_Click;
    }

    void notifyIcon1_Click(object sender, EventArgs e)
    {
        this.WindowState = FormWindowState.Normal;
    }
}

В обработчике просто переводим форму из минимизированного состояния в обычное.

И кроме того, чтобы форма не отображалась на панели задач, у нее задаем свойство ShowInTaskbar = false.

В итоге после запуска приложения в трее будет отображаться значок NotifyIcon, нажав на который при свернутой форме, мы ее можем заново открыть.

NotifyIcon в Windows Forms

Теперь используем всплывающую подсказку. Для этого изменим конструктор формы:

public partial class Form1 : Form
{   
    public Form1()
    {
        InitializeComponent();
		
        this.ShowInTaskbar = false;
		notifyIcon1.Click += notifyIcon1_Click;
		
		// задаем иконку всплывающей подсказки
		notifyIcon1.BalloonTipIcon = ToolTipIcon.Info;
		// задаем текст подсказки
        notifyIcon1.BalloonTipText = "Нажмите, чтобы отобразить окно";
		// устанавливаем зголовк
        notifyIcon1.BalloonTipTitle = "Подсказка";
		// отображаем подсказку 12 секунд
        notifyIcon1.ShowBalloonTip(12);
    }

    void notifyIcon1_Click(object sender, EventArgs e)
    {
        this.WindowState = FormWindowState.Normal;
    }
}

И при запуске отобразится всплывающая подсказка:

Помощь сайту
Юмани:
410011174743222
Перевод на карту
Номер карты:
4048415020898850