Notify-Icon bleibt nach beenden

  • VB.NET

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von Onlymad.

    Notify-Icon bleibt nach beenden

    Hey ho,
    Ich habe ein kleines Problem.
    Folgendes: Ich habe eine Anwendung geschrieben, die ich mit einem Notify-Icon ausgestattet habe.
    Wenn ich das Programm nun beende, oder es sich selbst beendet, bleibt das Notify-Icon trotzdem noch in der Symbolleiste.



    Wenn ich dann mit der Maus über die Icons fahre, verschwinden die Icons auf mysteriöse Weise :D
    Das ist aber ziemlich nervend :D

    Brauche das gerade für ein größeres Projekt, und da ist es mir auch schon aufgefallen.

    Habe es auch schon probiert, das Notifyicon nicht als Control hinzuzufügen sondern per Withevents..selbes Ergebnis
    Das Notify-Icon ist in der Tat nach dem Hinzufügen zum Systray auch dort referenziert und wird daher nicht automatisch zerstört wenn deine Anwendung sich beendet. Erst wenn du damit interagieren willst (z.B. durch MouseOver o.ä.) will der Systray den jeweiligen Besitzer - deine Anwendung - darüber per Event informieren und merkt erst in dem Moment dass der zugehörige Prozess gar nicht mehr existiert. Erst dann weiß das Systray über diesen Umstand bescheid und räumt kurzerhand auf (das Icon verschwindet "auf mysteriöse Weise").

    Um dieses Verhalten zu vermeiden musst du dafür sorgen, dass beim Beenden deines Programms auch das Icon wieder entfernt wird. Der korrekte Hinweis (NotifyIcon.Visible = False bzw. besser NotifyIcon.Dispose) wurde schon gegeben, das sollte dann am besten beim Beenden deines Programms (z.B. im FormClosed-Event deines Hauptfensters) ausgeführt werden.
    Weltherrschaft erlangen: 1%
    Ist dein Problem erledigt? -> Dann markiere das Thema bitte entsprechend.
    Waren Beiträge dieser Diskussion dabei hilfreich? -> Dann klick dort jeweils auf den Hilfreich-Button.
    Danke.