Home » Tipps & Tricks » Applikation » Taskleiste/Tray » Icon in der Taskleiste während des Programmablaufs ändern

Icon in der Taskleiste während des Programmablaufs ändern

Das Application-Objekt besitzt die Eigenschaft Icon. Ihr kann man eine Variable vom Typ TIcon übergeben. Das neue Icon wird dann in der Taskleiste angezeigt.
Es ist auch möglich, das Icon mithilfe der Methode LoadFromFile direkt aus einer Datei zu laden:

Application.Icon.LoadFromFile(ExtractFilePath(ParamStr(0))+'Program.ico');

Alternativ lassen sich Icons auch aus den Ressourcen der Exe-Datei laden. Dazu muss der Name des Icons bekannt sein. Die Funktion LoadIcon gibt das Handle des Icons zurück, welches dann dem Anwendungs-Icon zugewiesen wird:

procedure TForm1.Button1Click(Sender: TObject);
var
  IconHandle: HICON;
begin
  IconHandle := LoadIcon(HInstance, 'ICON2');
  if IconHandle  0 then
    Application.Icon.Handle := IconHandle;
end;