Home » Tipps & Tricks » Applikation » Taskleiste/Tray » Animation zum Systemtray
Animation zum Systemtray
Falls eine Anwendung, die ihr Symbol im SystemTray zeigt und nicht in der Taskleiste, verkleinert wird, sieht es unprofessionell aus, wenn die Animation (der Verkleinerung) zur Taskleiste geht und nicht zum Systemtray. Um dies zu ändern, wird das OnMinimize-Ereignis des Applications-Objekts (z.B. über die Komponente TApplicationEvents) genutzt:
procedure TForm1.ApplicationEvents1Minimize(Sender: TObject); begin Screen.DrawAnimatedRects(Handle, IDANI_CAPTION, BoundsRect, Rect(Width - 20, Height, Width - 10, Height)); end;
In älteren Delphi-Versionen existiert die Komponente TApplicationEvents noch nicht, deshalb muss man das Ereignis in so einem Fall per Code zuweisen:
procedure TForm1.FormCreate(Sender: TObject); begin Application.OnMinimize:=ApplicationEvents1Minimize; end;
Die Animation aus dem SystemTray erreicht man durch Tauschen der beiden Parameter. Relevant ist hier das Ereignis OnRestore:
procedure TForm1.ApplicationEvents1Restore(Sender: TObject); begin Screen.DrawAnimatedRects(Handle, IDANI_CAPTION, Rect(Width - 20, Height, Width - 10, Height), BoundsRect); end;