Как поменять иконку приложения на панели задач, но не формы?

Подскажите, как сменить иконку на панели задач так, чтобы иконка формы (form.icon) осталась неизменной?

Application.Icon.Assign() меняет иконку и там и там. И даже если после смены к примеру принудительно изменить form.icon - то ничего не происходит...


Ответы (1 шт):

Автор решения: Alex R.

Установите свойство Application.MainFormOnTaskbar в значение False. Это укажет, что для кнопки на панели задач, заголовок и иконку надо брать не из главной формы, а использовать свойства невидимого окна Application.

Пример

Устанавливаем в файле .dpr (project/view source).

  Application.Initialize;
  Application.Title := 'Заголовок кнопки';
  Application.MainFormOnTaskbar := False;   // меняем на false
  Application.CreateForm(TForm1, Form1);
  Application.Run;

В основной форме при создании формы

procedure TForm1.FormCreate(Sender: TObject);
begin
  Icon.LoadFromFile('с:\temp\1.ico');

  Application.Icon.LoadFromFile('с:\temp\2.ico');
end;

Результат

введите сюда описание изображения

→ Ссылка