Qt5 (Linux/LXDE) 中不显示系统托盘图标

Posted

技术标签:

【中文标题】Qt5 (Linux/LXDE) 中不显示系统托盘图标【英文标题】:System tray icon doesn't show in Qt5 (Linux/LXDE) 【发布时间】:2014-08-14 17:48:39 【问题描述】:

我正在将一个应用程序从 Qt4 移植到 Qt5,它显示了一个系统托盘图标。在 Qt4 中它可以工作,但是在使用 Qt5 编译时,图标不显示。

我用来显示图标的代码是:

QSystemTrayIcon* trayIcon = new QSystemTrayIcon(this);
trayIcon->setIcon(qApp->windowIcon());
trayIcon->setVisible(true);

我的电脑在 Debian Wheezy 上运行 LXDE。

【问题讨论】:

【参考方案1】:

没关系(我的意思是你的代码)。

目前,QT5 在 linux 的托盘图标方面存在很多未解决的问题。

这里有一些错误供进一步阅读:

https://bugreports.qt.io/browse/QTBUG-30079

https://bugreports.qt.io/browse/QTBUG-31762

https://bugreports.qt.io/browse/QTBUG-34364

不幸的是,我们可以做一些事情。我重新编写了我的应用程序,使所有选项都可以在没有托盘的情况下访问。

附:我发布的错误中有一些解决方法,它们有时会起作用。

【讨论】:

以上是关于Qt5 (Linux/LXDE) 中不显示系统托盘图标的主要内容,如果未能解决你的问题,请参考以下文章

Qt5应用改变窗口大小时出现黑影

JWPlayer 在 Qt5 QWebView 中不可见

Qt 5.0.1 中不显示应用程序图标

QHttp 在 Qt5 中不可用

QMediaPlayer 在 qt5 中不起作用

Qt5.natvis 在 VS 2015 更新 2 中不起作用