单击QSystemTrayIcon会在Mate桌面上显示一个空的上下文菜单

时间:2016-09-04 08:37:01

标签: c++ qt system-tray trayicon

我想为我的应用程序创建一个托盘图标,以便在前者最小化后点击它时显示主窗口。

以下是实施:

TrayIcon.h:

class TrayIcon_t : public QSystemTrayIcon {
    Q_OBJECT
public:
    TrayIcon_t();
};

TrayIcon.cpp:

TrayIcon_t::TrayIcon_t() {
    setIcon(QIcon(":/icons/tray.ico"));
}

Main.cpp(仅限部分,没有更多与托盘相关的代码):

TrayIcon_t *tray = new TrayIcon_t;
QObject::connect(tray, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), &MainWindow, SLOT(show()));
tray->show();

在LXDE上工作得很好,在MATE桌面上它主要打开一个小菜单(我认为),不包含任何项目,并且不会发出主窗口显示所需的信号。 See this picture.

您认为我在Qt 5.7.0中遇到过错误吗?

1 个答案:

答案 0 :(得分:0)

原来这是一个错误。报告并接受: https://bugreports.qt.io/browse/QTBUG-55717