我有一个 Qt 应用程序,在 Xfce 和其他 Linux 桌面下运行,效果很好,除了在应用程序启动时循环的“启动通知”图标没有消失,因此在应用程序主窗口显示后它会持续一段时间并完成。
我会假设 QApplication 在主窗口事件循环开始时默认关闭通知,或者我会调用一些方法来这样做。我在 Qt API 文档中或在 Qt 启动通知上的谷歌搜索中找不到任何相关内容。
如何在 Qt 应用程序中关闭启动通知。
我有一个 Qt 应用程序,在 Xfce 和其他 Linux 桌面下运行,效果很好,除了在应用程序启动时循环的“启动通知”图标没有消失,因此在应用程序主窗口显示后它会持续一段时间并完成。
我会假设 QApplication 在主窗口事件循环开始时默认关闭通知,或者我会调用一些方法来这样做。我在 Qt API 文档中或在 Qt 启动通知上的谷歌搜索中找不到任何相关内容。
如何在 Qt 应用程序中关闭启动通知。
不添加
StartupNotify=false
到.desktop
您的应用程序的文件解决问题?在 KDE 中,
X-KDE-StartupNotify=false
作品; 也许 XFCE 也有类似的变量。
当第一个窗口首次显示时,启动通知会在 Qt 内部自动发送(参见 src/plugins/platforms/xcb/qxcbscreen.cpp),但显然,由于一个错误,如果有引号或转义字符,它就不起作用( \
) 在程序路径中的 .desktop 文件中。
另外,如果Terminal=true
出现,环境变量DESKTOP_STARTUP_ID会被xterm删除,不会到达你的应用程序,所以最好不要同时启用Terminal
和StartupNotify
flags。
在 MATE 上进行了测试。