我已经构建了一个通过 SystemTray 类隐藏在系统托盘中的应用程序。工作正常,但是当我退出程序并再次启动它时,它不会在用光标悬停它之前从托盘中删除图标。多次执行此操作会导致出现多个图标:
这是我程序的问题还是 Windows 的错误?
我关注了this guide创建系统托盘图标。
最佳答案
当创建托盘图标的应用程序终止时,Windows 不会自动删除托盘图标。只有当用户将鼠标悬停在它上面并注意到拥有进程不再存在时,它才会这样做。
要确保图标立即被删除,您必须在程序退出时调用 systemTray.remove(yourIcon)
。
关于Java 程序多次出现在系统托盘中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14092136/