admin 管理员组

文章数量: 887007

Qt 实现程序图标和通知栏设置

Qt 实现程序图标和通知栏设置-windows平台

在windows平台下的程序图标设置

一般来说在windows平台下设置程序的显示图标,可以通过在.pro文件中设置RC_ICONS 来实现,代码如图所示。

#设置程序的桌面图标--windows平台
RC_ICONS = MyIcon/main.ico

设置系统托盘

系统托盘位于操作系统任务栏的右下角,托盘具有消息提示,右键菜单等功能。下面通过代码来介绍其基本使用方式。

MainWindow::MainWindow(QWidget *parent): QMainWindow(parent), ui(new Ui::MainWindow)
{ui->setupUi(this);//设置通知栏的图标QSystemTrayIcon *trayIcon= new QSystemTrayIcon(this);trayIcon->setIcon(QIcon(":/MyIcon/bussiness-man.svg"));//设置通知栏的单击事件connect(trayIcon, SIGNAL(activated(QSystemTrayIcon::ActivationReason)), this, SLOT(stTrayIconActive(QSystemTrayIcon::ActivationReason)));//设置通知栏的右键菜单QMenu * menu = new QMenu();//设置菜单项目QIcon icon1(":/MyIcon/component.svg");QAction *actionHide = new QAction(icon1, "Hide", menu);menu->addAction(actionHide);trayIcon->setContextMenu(menu);// 设置Action的响应connect(actionHide, SIGNAL(triggered()), this, SLOT(stActionHide()));trayIcon->show();//托盘的消息提示trayIcon->showMessage("title", "this is a message", QIcon(":/MyIcon/code.svg"));
}//槽函数处理点击托盘
void MainWindow::stTrayIconActive(QSystemTrayIcon::ActivationReason acReason)
{switch (acReason){case QSystemTrayIcon::Trigger:{showNormal();break;}default:;}
}//槽函数处理托盘右键菜单的隐藏action
void MainWindow::stActionHide()
{hide();
}

本文标签: Qt 实现程序图标和通知栏设置