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


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,这样窗口就不会关闭了,你学会了吗。

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



上一篇:TensorFlow 简介

下一篇:Qt QEventLoop


Qt
Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图