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

Компонент TTaskBar появился впервые в Delphi XE7. Компонент TTaskBar позволяет использовать возможности Windows 7 и выше при работе с иконкой вашего приложения в списке задач. Например, Вы можете отображать прогресс какой-либо задачи, сигнализировать об ошибке и т.д.

Основная информация по компоненту
Вкладка палитры компонентов Win32
Исходник официального примера и документация SourceForge DocWiki

Демонстрационное приложение показывает как использовать основные возможности компонента TTaskBar в Delphi.

Внешний вид демонстрационного приложения представлен на рисунке ниже:

В демонстрационном приложении Вы можете изменить внешний вид (цвет) полоски прогресса в панели задач, «нарисовать» на иконке своего приложения один из трех доступных значков, добавить до трех кнопок в панель управления.

 

Использование компонента

Используя компонент TTaskBar в Delphi, вы можете:

  • Показать/обновить ход выполнения какой-либо операции на кнопке панели задач
  • Использовать несколько различных цветовых состояний, представляющих связанный индикатор выполнения (нормальный вид, ошибка, пауза)
  • Наложить дополнительно изображение (иконку) на значок панели задач приложения
  • Добавить несколько кнопок в предварительном просмотре миниатюр приложения на панели задач.

Индикатор хода выполнения операции может иметь разные цвета в зависимости от состояния приложения. Вы можете установить цвет, используя свойство ProgressState:

ProgressState Вид иконки
None
Normal
Error
Paused
Indeterminate

Вы также можете добавить кнопки панели задач, которые отображаются, когда пользователь наводит указатель мыши на значок приложения на панели задач Windows:

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

 

Демонстрационный пример

Пример демонстрирует работу с компонентом TTaskBar в Delphi. Так, например, чтобы наложить на кнопку вашего приложений в панели задач дополнительную иконку (OverlayIcon) используется следующий обработчик OnClick для иконок, расположенных на главной форме приложения:

procedure TForm1.Image1Click(Sender: TObject);
begin
  Taskbar1.OverlayIcon := Timage(sender).Picture.Icon;
end;

Отображение прогресса выполнения осуществляется следующим образом:

procedure TForm1.TrackBar1Change(Sender: TObject);
begin
  Taskbar1.ProgressMaxValue := TrackBar1.Max;
  Taskbar1.ProgressValue := TrackBar1.Position;
end;

А смена внешнего вида полоски прогресса выполняется так:

procedure TForm1.ComboBox1Change(Sender: TObject);
begin
  case ComboBox1.itemindex of
    0: Taskbar1.ProgressState := TTaskBarProgressState.None;
    1: Taskbar1.ProgressState := TTaskBarProgressState.Normal;
    2: Taskbar1.ProgressState := TTaskBarProgressState.Indeterminate;
    3: Taskbar1.ProgressState := TTaskBarProgressState.Error;
    4: Taskbar1.ProgressState := TTaskBarProgressState.Paused;
  end;
end;
Используя материал этой статьи можно сократить приведенный выше участок кода

На рисунке ниже представлен пример иконки работающего демонстрационного приложения с оверлеем и тремя кнопками под миниатюрой приложения:

 

При подготовке статьи использовалась информация со следующих ресурсов:

  1. Официальный репозиторий демонстрационных примеров Delphi на SourceForge
  2. Документация по компоненту на сайте Embarcadero
  3. Информация по работе с компонентом TTaskBar на сайте Embarcadero

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