Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi SysTray "sauber" machen? (https://www.delphipraxis.net/113272-systray-sauber-machen.html)

romber 5. Mai 2008 16:14


SysTray "sauber" machen?
 
Hallo!

Manchmal bleiben die Icons der beendeten Programme im SysTray weiterhin stehen. Gibt es eine Möglichkeit, mit Delphi diese aus dem SysTray zu entfernen?

rollstuhlfahrer 5. Mai 2008 16:27

Re: SysTray "sauber" machen?
 
generell aknn man mit der Maus über die Tray Notification Area fahren, um die Icons der beendeten Programme zu entfernen. Abder eine Lösung in Delphi ist das eben nicht.

rollstuhlfahrer

Laufi 5. Mai 2008 16:37

Re: SysTray "sauber" machen?
 
Hallo!

Du kannst SetCursorPos(x, y) verwenden um mit deinem Programm den mauszeiger über die icons zu bewegen und danach zurücksetzen.

Liebe Grüsse
Laufi

rollstuhlfahrer 5. Mai 2008 16:42

Re: SysTray "sauber" machen?
 
Zitat:

Zitat von Laufi
Du kannst SetCursorPos(x, y) verwenden um mit deinem Programm den mauszeiger über die icons zu bewegen und danach zurücksetzen...

Das würd ich nur als Notlösung vorschlagen. Ob es da etwas in der WinAPI gibt, weis ich nicht, bin aber zuversichtlich, dass es da irgendwo die Aktion Aktualisierewn gibt. Was anderes würde Windows hier wohl auch nicht machen.

rollstuhlfahrer

RavenIV 5. Mai 2008 16:50

Re: SysTray "sauber" machen?
 
Zitat:

Zitat von romber
Hallo!

Manchmal bleiben die Icons der beendeten Programme im SysTray weiterhin stehen. Gibt es eine Möglichkeit, mit Delphi diese aus dem SysTray zu entfernen?

Eigentlich ist ja jedes Programm selber dafür zuständig, dass sein Icon beim Beenden des Programmes aus der TNA verschwindet.

Poelser 5. Mai 2008 16:52

Re: SysTray "sauber" machen?
 
Moin,

ich meine, die Taskbar hat einen Fensternamen und einen Klassenname (vor langer Zeit mal irgendwo gelesen). Darüber sollte es möglich sein, diesem Fenster einfach ein Refresh zu schicken.

lbccaleb 5. Mai 2008 16:55

Re: SysTray "sauber" machen?
 
Zitat:

Zitat von Poelser
Moin,

ich meine, die Taskbar hat einen Fensternamen und einen Klassenname (vor langer Zeit mal irgendwo gelesen). Darüber sollte es möglich sein, diesem Fenster einfach ein Refresh zu schicken.

ja so würd ich es auch mal ausprobieren, suchst dir das handle mit findwindow und findwindowex (hier nach winspy suchen!!) und dann lässt du die ganze traybar neuzeichnen, das sollte eigentlich aus reichen..


Alle Zeitangaben in WEZ +1. Es ist jetzt 23:26 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz