我有一个带有按钮的窗口,当窗口被按下时,它会对系统托盘隐藏窗口。
问题是未显示系统托盘图标。这是代码,我做错了什么?
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <QSystemTrayIcon>
#include <QString>
#include <QPixmap>
#include <QIcon>
#include <QAction>
#include <QMenu>
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
//setup tray icon
QSystemTrayIcon *tray;
QPixmap icon(":/pencil.png");
QIcon trayIcon;
tray= new QSystemTrayIcon(this);
trayIcon= QIcon(icon);
tray->setIcon(trayIcon);
tray->setToolTip("ToolTip");
//setup restore
QAction *restoreAction;
restoreAction = new QAction(QIcon(":/pencil.png"), "Restore", this);
connect(restoreAction, SIGNAL(triggered()), this, SLOT(show()));
QMenu *trayIconMenu;
trayIconMenu = new QMenu(this);
trayIconMenu->addAction(restoreAction);
tray->setContextMenu(trayIconMenu);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_clicked()
{
this->hide();
}我按下了隐藏窗口的按钮,但没有系统托盘图标显示。为什么?
发布于 2016-05-05 19:27:34
我找到了..。
我必须将可视设置为真正的托盘图标
trayIconMenu = new QMenu(this);
trayIconMenu->addAction(restoreAction);
tray->setContextMenu(trayIconMenu);
tray->setVisible(true);https://stackoverflow.com/questions/37048336
复制相似问题