ГЛАВНАЯ     АРХИВ     НАПИСАТЬ АДМИНУ     ПОДПИСАТЬСЯ НА RSS     ВОЙТИ      

Поиск

Категории

Облако тегов

  << Предыдущий пост       Следующий пост >>  
От: inbruk
27. октября 2010 22:20

Чтобы добавить своему WinForms приложению возможность сворачиваться в системный трей нужно использовать контрол NotifyIcon. Этот контрол находится в стандартной библиотеке контролов (на Toolbox-е, в наборе CommonControls). После добавления контрола на форму, он появится не на ней, а на панели ниже. Важно задать (например, на вкладке Properties) какую-нибудь валидную маленькую иконку свойству Icon контрола NotifyIcon. Если этого не сделать то, после сворачивания приложения иконка видна не будет и контроль со стороны пользователя будет утерян. Для непосредственно сворачивания в программе нужно скрыть форму и показать иконку в трее. Когда же придет время развернуть приложение нужно соответственно показать форму и скрыть иконку. Следующий пример показывает как это можно сделать. Сворачивание происходит при нажатии на кнопку на форме. Разворачивание при клике по иконке в трее.

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace TrayIconApp
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
this.ShowInTaskbar = false; /* для скрытия задачи на панели задач */
}

private void notifyIcon1_Click(object sender, EventArgs e)
{
this.Visible = true; /* покажем форму */
notifyIcon1.Visible = false; /* скроем икону в трее */
}

private void button1_Click(object sender, EventArgs e)
{
this.Visible = false; /* скроем форму */
notifyIcon1.Visible = true; /* покажем икону в трее */
}

private void button2_Click(object sender, EventArgs e)
{
this.Close();
}
}
}

И последний штрих – если хочется чтобы в развернутом состоянии приложение не показывалось на панели задач (так, например, можно настроить WinAmp), то нужно в конструкторе основной формы указать

this.ShowInTaskbar = false;


Новая версия флеш плеера - Программа Adobe flash плеер 10.3.181.26 является необходимым компонентом браузера. Он используется при просмотре видеороликов в формате SWF

Профессионально проведем процедуру таможенного декларирования товаров, окажем всестороннюю помощь по всем вопросам. Сайт www.dialog-broker.ru расскажет о наших предложениях.

Похожие записи


Вопросы на собеседовании C#, Net, ASP.NET, SQL
Продолжая тему вопросов на собеседовании. Нашел еще одну подборку. Оригинал лежит здесь . Перенес, чтобы не затерялось. Есть вполне вменяемые ответы (хотя, на некоторые вопросы ответил бы по-другому). Ответы находятся после списка вопросов, я их не менял. 23. Что такое шаблон проектирования Model/View/Controller? Как и зачем его применяют? 2...

Как передать функцию как параметр в другую функцию на JavaScript ?
Часто бывают ситуации, когда хочется (было бы удобно) передать функцию как параметр в другую функцию, и там использовать. И все это заметьте на JavaScript-е. Рассмотрим пример того, как это можно сделать. [code:c#] <script type="text/javascript"> function fOne(p1, p2) { p1(p2); } /* function literal */ var fTwo = function (m1) { alert(m1 ...

Как записывать свои сообщения в лог событий Windows (системный лог) под .Net ?
Допустим вы пишете приложение сервер или службу Windows (демона). Часто такие приложения с одной стороны не имеют пользовательского интерфейса (в обычном понимании), а с другой должны выполнять какую-то важную работу (обслуживание клиентов). Для того чтобы корректно функционировать серверу/демону/службе нужно иметь возможность сообщить системному администратору о важн...

Комментарии

 
nobelwerfer 29.07.2011 18:01:45 #

ну winforms не так актуально, а вот WPF было бы интереснее ...

Добавить комментарий




biuquote
  • Комментарий
  • Предпросмотр
Loading


  Сохранить комментарий