Warum bleibt manchmal nach Programmende ein leerer Eintrag in der Taskleiste zurück?


Manchmal verbleibt nach dem Beenden eines Programms anstelle des Buttons für das Programm ein leerer Button in der Windows-Taskleiste, der erst nach einem Mausklick verschwindet. Woran liegt das und wie kann man das verhindern?

Peter Haas hat nach langwierigen Versuchen folgendes herausgefunden: Der leere Button in der Taskleiste bleibt zurück, wenn das Hauptformular beim Beenden den Bildschirm mindestens vollständig ausfüllt. (Es darf auch größer sein). Bereits ein Pixel, daß auf irgendeiner Seite hervorsieht und der leere Button tritt nicht auf. Nachvollziehbar bereits mit einem völlig leeren Formular!

Eine daraus resultierende Lösung ist es, das Hauptformular vor dem Beenden zu minimieren. Dazu kann man in der OnClose-Methode des Hauptformulars folgende Zeile einzufügen:

  ShowWindow(Handle,SW_SHOWMINIMIZED);
Delphi 1 Delphi 2 Delphi 3 Delphi 4
nicht getestet Version nicht betroffen getestet

siehe auch:


Delphi FAQ