QSystemTrayIcon没有显示在Ubuntu 14.04的通知区域中

时间:2014-07-14 08:45:45

标签: c++ qt ubuntu qt5

我正在编写一个使用QSystemTrayIcon的应用程序。一切都按预期工作,但图标不会显示在右上角的Unity通知区域中,而是显示在左上角。

目前的构建环境是Ubuntu 14.04上的clang 3.4,QT 5.3。当使用MinGW进行交叉编译并在wine中运行应用程序时,图标会正确显示。

这可能是Ubuntu中缺少的设置吗?

这是一个产生相同行为的简单片段:

#include <QSystemTrayIcon>
#include <QApplication>

int main(int argc, char *argv[])
{
    QApplication app(argc, argv);

    QPixmap pixmap(32, 32);
    pixmap.fill(Qt::red);

    QIcon icon(pixmap);

    QSystemTrayIcon trayIcon(icon);

    QObject::connect(&trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), &app, SLOT(quit()));

    trayIcon.show();

    return app.exec();
}

1 个答案:

答案 0 :(得分:3)

您描述的问题是已知且当前未修复的错误。见https://bugreports.qt.io/browse/QTBUG-31762

解决方法

sudo apt-add-repository ppa:gurqn/systray-trusty
sudo apt-get update
sudo apt-get upgrade