有时需要将程序放在系统托盘,可以通过如下实现:
void Test::SetSystemTrayIcon()
{
QIcon icon = QIcon(QPixmap(":/images/icon.png"));if (QSystemTrayIcon::isSystemTrayAvailable()){//判断系统是否支持系统托盘图标m_trayIcon.setIcon(icon);m_trayIcon.setToolTip("test");QMenu* trayIconMenu = new QMenu;QAction* quitAction = new QAction(tr("退出 (&Q)"), this);trayIconMenu->addAction(quitAction);connect(quitAction, SIGNAL(triggered()), this, SLOT(Exit()));m_trayIcon.setContextMenu(trayIconMenu);m_trayIcon.show();connect(&m_trayIcon,SIGNAL(activated(QSystemTrayIcon::ActivationReason)),this,SLOT(trayiconActivated(//点击托盘中的图标QSystemTrayIcon::ActivationReason)));}}
实现点击托盘中的图标
void Test::trayiconActivated(
QSystemTrayIcon::ActivationReason reason){
switch (reason){case QSystemTrayIcon::Trigger://单击托盘图标case QSystemTrayIcon::DoubleClick://双击托盘图标this->setWindowState(Qt::WindowActive);this->show();break;default:break;}}
QT添加到系统托盘
最新推荐文章于 2022-07-18 14:55:38 发布