自学QT之托盘菜单

这两天跟托盘较上劲了,如何实现酷狗那种托盘右键菜单呢?看上去高大上,其实并不难。

只要在托盘产生的时候,给它加上右键菜单就行了。

void player::on_closeBtn_clicked()//单击关闭按钮,产生托盘和托盘菜单
{
    this->hide();
    trayIcon->setIcon(QIcon(":/new/prefix1/image/tray.jpg"));
    QMenu *trayMenu=new QMenu();
    aboutAction=new QAction(tr("关于"),this);
    quitAction=new QAction(tr("退出"),this);
    trayMenu->addAction(aboutAction);
    connect(aboutAction,SIGNAL(triggered(bool)),this,SLOT(showAbout()));
    trayMenu->addAction(quitAction);
    connect(quitAction,SIGNAL(triggered(bool)),this,SLOT(close()));
    trayIcon->setContextMenu(trayMenu);
    trayIcon->setToolTip("托盘图标");    
    trayIcon->show();
    trayIcon->showMessage("主人","我在这里哦",QSystemTrayIcon::Information,5000);//一定要放在这里,否则提示信息会不显示
}

这个是我的代码一部分,从中不难看出,和正常的界面添加右键菜单一样,并没有什么不同。这样就可以轻松实现托盘图标的右键功能了。

运行后的结果:

自学QT之托盘菜单_第1张图片

你可能感兴趣的:(QT)