Qt扫盲-QSystemTrayIcon理论总结
创始人
2024-05-06 18:51:37
0

QSystemTrayIcon理论总结

  • 一、概述
  • 二、使用对象
  • 三、使用
  • 四、常用函数介绍
    • 1. 静态函数
    • 2. 公共槽函数
    • 3. 信号

一、概述

现代操作系统通常在桌面上提供一个特殊的区域,称为系统托盘或通知区域,长期运行的应用程序可以在这里显示图标和短消息。什么意思呢?其实就是像这个下面这个功能。鼠标右键一个图表,就会弹出一个菜单栏。还有最右边的消息中心就是通知消息的内容。
在这里插入图片描述

二、使用对象

QSystemTrayIcon类可以在以下平台上使用:

  • 所有支持的Windows版本。
  • X11的所有窗口管理器和独立托盘实现实现了 XEmbed 系统托盘规范。
    实现 D-Bus 规范的所有X11桌面环境,包括最新版本的KDE和Unity。其实也是就是支持Linux系统。
  • macOS支持的所有版本。

要检查用户桌面上是否有系统托盘,请调用QSystemTrayIcon::isSystemTrayAvailable()静态函数。

三、使用

要添加一个系统托盘条目,创建一个QSystemTrayIcon对象,调用setContextMenu()为图标提供一个上下文菜单,也就是构造一个QMenu的对象就好,并调用 show() 使其在系统托盘中可见。状态通知消息可以在任何时候使用showMessage() 显示。

如果想要定制很复杂的那个系统托盘菜单就是像下面这种的话,就是自己继承一下QMenu然后重新定制就好啦

在这里插入图片描述

如果在构建系统托盘图标时系统托盘不可用,但之后变得可用,如果图标可见,QSystemTrayIcon将自动在系统托盘中为应用程序添加一个条目。

当用户激活图标时发出activated()信号。
只有在X11上,当一个工具提示被请求时,QSystemTrayIcon会接收一个QEvent:: tooltip类型的QHelpEvent。此外,QSystemTrayIcon接收类型为QEvent:: wheel的车轮事件。其他平台不支持这些功能。

四、常用函数介绍

1. 静态函数

  • bool isSystemTrayAvailable():就是看这个系统支持这个系统托盘不
  • bool supportsMessages():看这个系统支持那个消息功能不

在这里插入图片描述

2. 公共槽函数

  • hide():就是隐藏这个系统托盘
  • setVisible(bool visible):设置这个系统托盘是否显示
  • show():显示这个系统托盘
  • showMessage(const QString &title, const QString &message, QSystemTrayIcon::MessageIcon icon = QSystemTrayIcon::Information, int millisecondsTimeoutHint = 10000):就是设置那个消息,里面包括消息内容,图标,什么时候消失之类的
  • showMessage(const QString &title, const QString &message, const QIcon &icon, int millisecondsTimeoutHint = 10000):也是设置那个消息

3. 信号

  • activated(QSystemTrayIcon::ActivationReason reason):就是点击了这个系统托盘
  • messageClicked():就是消息点击的时候发射

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...