当前位置: 首页 > news >正文

QT笔记- QSystemTrayIcon系统托盘功能完整示例

1. 创建托盘对象

    // 创建托盘图标QSystemTrayIcon * trayIcon = new QSystemTrayIcon(this);QIcon icon("://icon/test.png");trayIcon->setIcon(icon);trayIcon->show();trayIcon->connect(trayIcon, &QSystemTrayIcon::activated,this, &MainWindow::_activated);setWindowFlags(this->windowFlags() | Qt::Tool); // 设置窗口为Qt::Tool类型

2. _activated()槽函数

void MainWindow::_activated(QSystemTrayIcon::ActivationReason reason)
{if(reason == QSystemTrayIcon::DoubleClick){if(isVisible()){activateWindow();} else {show();}} else if(reason == QSystemTrayIcon::Context){QMenu menu;QAction * closeAction = new QAction("Close", this);// 连接关闭程序的信号槽,当点击该动作时,关闭整个应用程序QObject::connect(closeAction, &QAction::triggered, qApp, &QApplication::quit);menu.addAction(closeAction);menu.exec(QCursor::pos()); // 在鼠标当前位置弹出菜单}
}


http://www.mrgr.cn/news/80104.html

相关文章:

  • vue常用命令汇总
  • BFS算法题
  • SpringBoot使用Nacos进行application.yml配置管理
  • nuxt2.0性能优化 ant design vue 组件和图标按需引入
  • 【蓝桥杯最新板】蓝桥杯嵌入式液晶上实现电子时钟
  • 不使用cmake进行CloudCompare插件开发
  • 【C++】简单计算器问题的深度解析与优化对比
  • 【Qt】信号、槽
  • ESP32-S3模组上跑通ES8388(30)
  • C++3--内联函数、auto
  • virtualbox 搭建ubuntu
  • ---mysql server: Ubuntu Linux下最最基本的操作
  • 关于睡懒觉
  • Elasticsearch 集群部署
  • Stable Diffusion Controlnet常用控制类型解析与实战课程 4
  • RabbitMQ中的Work Queues模式
  • 使用Nexus3搭建npm私有仓库
  • 八大排序算法C语言版
  • 112.【C语言】数据结构之排序(详解插入排序)
  • 在 Ubuntu 24.04.1 LTS (WSL) 中使用 openssl 生成 keybox.xml
  • 进程保活机制
  • 深度学习中的多通道卷积与偏置过程详解
  • 零知识证明:区块链隐私保护的变革力量
  • 基于wifipumpkin3的AP伪造
  • Visual Studio 2022+CMake配置PCL1.14.1
  • vite打包失败 - out of memory