当前位置: 首页 > 网络知识

Qt QSystemTrayIcon(托盘程序整个例子)

时间:2026-01-25 16:16:47

QSystemTrayIcon ,来达到一些基本的托盘程序,也是本文章要讲的。第二种是继承QSystemTrayIcon类,这样子类设计可以使得托

盘程序更加功能强大,接下来给大家讲解简单的托盘:

托盘也出现了程序:

当我们关闭程序时候,

弹出了消息框,程序没有退出,在托盘依旧可以找到它,并且右击出现菜单:

点击恢复原来样子,或者双击托盘图标,可以恢复程序原来的位置;

下面我们来看代码部分:

对应的头文件:

1 #ifndef MAINWINDOW_H 2 #define MAINWINDOW_H 3 4 #include <QMainWindow> 5 #include <QSystemTrayIcon> //托盘使用的头文件 6 7 namespace Ui 10 11 class MainWindow : public QMainWindow 12 ; 34 35 #endif // MAINWINDOW_H

重写了closeEvent()函数,自定义了一个action函数:

对应的cpp文件:

1 #include "mainwindoh" 2 #include "ui_mainwindoh" 3 #include<QCloseEvent> 4 5 MainWindow::MainWindow(QWidget *parent) : 6 QMainWindow(parent), 7 ui(new Ui::MainWindow) 8 36 37 MainWindow::~MainWindow() 38 41 42 void MainWindow::closeEvent(QCloseEvent * event) 43 50 else 53 54 } 55 56 void MainWindow::on_activatedSysTrayIcon(QSystemTrayIcon::ActivationReason reason) 57 69 }

程序就是使用QAction 的变量绑定了界面不同的功能,其中:

connect(quit,&QAction::triggered,qApp,&QApplication::quit);

托盘菜单的退出菜单才是真的关闭整个程序。

当我们点击关闭按钮时候执行了:

1 void MainWindow::closeEvent(QCloseEvent * event) 2 9 else 12 }

当托盘还在的时候,界面影藏起来,消息使用ignore,这样窗口就不会关闭了,你学会了吗。

大家可以多想想,还有我们常见的东西,我们一起加油实现出来,让自己变得更加好。



上一篇:Qt QEventLoop
下一篇:Anaconda 安装和入门(超级简单详细的安装步骤)
Qt
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素