Домой C# Анимация иконки в области уведомлений: Справочник по C#

Анимация иконки в области уведомлений: Справочник по C#

553
0


      Данная инструкция содержит пример реализации анимации иконки в области уведомлений (иконки расположенные возле часов). Запустите Microsoft Visual Studio и перейдите в меню Файл -> Создать -> Проект…. В центральной части открывшегося окна, выберете шаблон «Проект Windows Form». Добавьте на форму три компонента:

  • Button1— Кнопка запуска анимации в области уведомлений;
  • Button2— Кнопка для остановки запущенной анимации;
  • NotifyIcon1— Графический компонент, представляющий класс «NotifyIcon», который создает значок в области уведомлений.

      Сделайте клик правой клавишей мыши по элементу управления «notifyIcon1» и выберете из появившегося контекстного меню, пункт «Свойства».

      В открывшемся окне свойств данного компонента, выберете свойство «Icon». Данное свойство задает значок, который будет отображаться в области уведомлений. В этом свойстве присутствует кнопка «», сделайте по ней клик левой клавишей мыши и в открывшемся окне добавьте файл иконки с расширением «*.ico». Также найдите свойство «Visible», отвечающее за отображение или срытие значка в области уведомлений, установите значение «True», указывающее на отображение значка сразу после запуска проекта.

      Сделайте двойной клик левой клавишей мыши по компоненту «button1», отвечающей за запуск анимации. Вы перейдете в автоматически созданный метод «button1_Click», события «Click», происходящего при нажатии на данный элемент управления.

      Запустите проект, нажав на клавишу «F5». В области уведомлений вы увидите иконку указанную в свойстве «Icon», элемента управления «notifyIcon1».

      В приложениях Visual C# часто содержатся данные, не являющиеся исходным кодом. Такие данные называются ресурсами проекта и могут включать XML-файлы, двоичные данные, текстовые файлы, аудио- и видео файлы, таблицы строк, изображения, значки, или любой другой тип данных, необходимых для приложения.
      Данные ресурсов проекта хранятся в формате XML, в файле с расширением RESX (имя по умолчанию – Resources.resx), который можно открыть в Обозревателе решений. Перейдите в Обозреватель решений и выберете ваш проект, сделайте клик правой клавишей мыши по нему. Выберете из появившегося контекстного меню, пункт «Добавить» и из раскрывающегося подменю, пункт «Создать элемент».

      У вас откроется окно «Добавление нового элемента – имя вашего проекта». В левой части окна у вас по умолчанию будет выбран пункт «Элементы Visual C#», в центральной части окна, выберете из предложенных элементов, элемент «Файл ресурсов» и задайте ему имя «IconAni». Нажмите кнопку «Добавить».

После добавления файла ресурсов, вы увидите его в обозревателе решений.

      Так же у вас откроется новая вкладка редактора добавленного файла ресурса. В верхней части окна у вас будет выпадающее меню «Добавить ресурс», выберете пункт «Добавить существующий файл…».

      В открывшемся окне «Добавить существующий файл к ресурсам» выберете файлы формата «*.ico», которые будут составлять анимацию. После выбора необходимых файлов, нажмите кнопку «Открыть», расположенную в нижней части окна.

После добавления файлов, вы увидите их в файле ресурсов.

      Перейдите в конструктор главной формы и добавьте элемент управления «Timer», для организации последовательной смены значка в области уведомлений.

      Класс ресурсов входит в пространство имен с именем .Properties, поэтому для доступа к загруженным файлам значков необходимо указать либо полное имя для каждого ресурса, либо добавить соответствующую директиву using в исходный файл, из которого осуществляется доступ к классу ресурсов.

      Для удобства доступа к загруженным файлам, создадим массив с использованием класса «Icon», который представляет значок Windows, являющегося точечным рисунком небольшого размера и использующегося для представления объекта.

icons = new Icon[8];
icons[0] = WindowsFormsTrayIconAnimation.IconAni.frame_001;
icons[1] = WindowsFormsTrayIconAnimation.IconAni.frame_002;
icons[2] = WindowsFormsTrayIconAnimation.IconAni.frame_003;
icons[3] = WindowsFormsTrayIconAnimation.IconAni.frame_004;
icons[4] = WindowsFormsTrayIconAnimation.IconAni.frame_005;
icons[5] = WindowsFormsTrayIconAnimation.IconAni.frame_006;
icons[6] = WindowsFormsTrayIconAnimation.IconAni.frame_007;
icons[7] = WindowsFormsTrayIconAnimation.IconAni.frame_008;

      Сделайте двойной клик по компоненту «Timer1», вы перейдете в листинг главной формы с автоматически созданным методом «timer1_Tick», события «Tick», возникающего при каждом срабатывания таймера через указанный интервал времени. Добавьте в него код реализующий при каждом срабатывании таймера подстановку нового значка из массива значков расположенных в фале ресурсов «IconAni» и счетчика который обновляется при достижении последнего элемента массива.

notifyIcon1.Icon = icons[currentIcon];
currentIcon++;
if (currentIcon == 7)
currentIcon = 0;

      Добавьте приведенный ниже код запуска таймера и формирования массива иконок в метод «button1_Click», компонента «button1».

timer1.Start();

icons = new Icon[8];
icons[0] = WindowsFormsTrayIconAnimation.IconAni.frame_001;
icons[1] = WindowsFormsTrayIconAnimation.IconAni.frame_002;
icons[2] = WindowsFormsTrayIconAnimation.IconAni.frame_003;
icons[3] = WindowsFormsTrayIconAnimation.IconAni.frame_004;
icons[4] = WindowsFormsTrayIconAnimation.IconAni.frame_005;
icons[5] = WindowsFormsTrayIconAnimation.IconAni.frame_006;
icons[6] = WindowsFormsTrayIconAnimation.IconAni.frame_007;
icons[7] = WindowsFormsTrayIconAnimation.IconAni.frame_008;

      Перейдите в Конструктор главной формы, выполнив сочетание клавиш «Shift+F7» Сделайте двойной клик левой клавишей мыши по компоненту «button2». Вы перейдете в автоматически созданный метод «button2_Click», события «Click», происходящего при нажатии на элемент управления. Данная кнопка отвечает за остановку анимации значка в области уведомлений и установку обычного.

notifyIcon1.Icon = WindowsFormsTrayIconAnimation.Properties.Resources.csharp;
timer1.Enabled = false;

Так же добавьте в листинг главной формы две переменные.

Icon[] icons;
int currentIcon=0;

      Запустите проект, нажав на клавишу «F5», после компиляции проекта нажмите на форме кнопку «Запустить». В области уведомлений вы увидите анимацию в виде крутящегося круга точек.

      Если необходимо остановить и установить стандартный значок приложения, нажмите кнопку «Остановить».

Ссылка для скачивания примера: Яндекс.Диск

ЧИТАТЬ ТАКЖЕ:  C#. Программирование для профессионалов, 2-е издание: Справочник по C#

Анимация иконки в области уведомлений: Справочник по C#

0.00 (0%) 0 votes

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь