PySide6.QtWidgets.QSystemTrayIcon¶
- class QSystemTrayIcon¶
QSystemTrayIcon类为系统托盘中的应用程序提供了一个图标。更多…概要¶
属性¶
方法¶
def
__init__()def
contextMenu()def
geometry()def
icon()def
isVisible()def
setContextMenu()def
setIcon()def
setToolTip()def
toolTip()
插槽¶
def
hide()def
setVisible()def
show()def
showMessage()
信号¶
def
activated()def
messageClicked()
静态函数¶
注意
本文档可能包含从C++自动翻译到Python的代码片段。我们始终欢迎对代码片段翻译的贡献。如果您发现翻译问题,您也可以通过在我们的https:/bugreports.qt.io/projects/PYSIDE上创建工单来告知我们。
详细描述¶
现代操作系统通常在桌面上提供一个特殊区域,称为系统托盘或通知区域,长时间运行的应用程序可以在其中显示图标和简短消息。
QSystemTrayIcon类可以在以下平台上使用:所有受支持的Windows版本。
所有实现D-Bus StatusNotifierItem规范的Linux桌面环境,包括KDE、Gnome、Xfce、LXQt和DDE。
所有实现freedesktop.org XEmbed系统托盘规范的X11窗口管理器和独立托盘实现。
所有受支持的macOS版本。
要检查用户的桌面上是否存在系统托盘,请调用
isSystemTrayAvailable()静态函数。要添加系统托盘条目,创建一个
QSystemTrayIcon对象,调用setContextMenu()为图标提供上下文菜单,并调用show()使其在系统托盘中可见。状态通知消息(“气球消息”)可以随时使用showMessage()显示。如果在构建系统托盘图标时系统托盘不可用,但后来变得可用,如果图标是
visible,QSystemTrayIcon将自动在系统托盘中为应用程序添加一个条目。当用户激活图标时,会发出
activated()信号。仅在X11上,当请求工具提示时,
QSystemTrayIcon会接收到类型为QEvent::ToolTip的QHelpEvent。此外,QSystemTrayIcon还会接收到类型为QEvent::Wheel的滚轮事件。这些功能在其他平台上不受支持。注意:自GNOME Shell版本3.26起,如果没有安装shell扩展,系统不支持所有的ActivationReason。另请参阅
系统托盘图标示例
- class ActivationReason¶
此枚举描述了系统托盘被激活的原因。
常量
描述
QSystemTrayIcon.Unknown
未知原因
QSystemTrayIcon.Context
系统托盘条目的上下文菜单被请求
QSystemTrayIcon.DoubleClick
系统托盘条目被双击。
注意
在macOS上,如果没有设置上下文菜单,双击才会被触发,因为菜单会在鼠标按下时打开
常量
描述
QSystemTrayIcon.Trigger
系统托盘条目被点击
QSystemTrayIcon.MiddleClick
系统托盘条目被鼠标中键点击
另请参阅
- class MessageIcon¶
此枚举描述了显示气球消息时显示的图标。
常量
描述
QSystemTrayIcon.NoIcon
不显示图标。
QSystemTrayIcon.Information
显示一个信息图标。
QSystemTrayIcon.Warning
显示一个标准的警告图标。
QSystemTrayIcon.Critical
显示一个严重警告图标。
另请参阅
注意
当使用
from __feature__ import true_property时,属性可以直接使用,否则通过访问器函数使用。此属性保存系统托盘图标。
在Windows上,系统托盘图标大小为16x16;在X11上,首选大小为22x22。图标将根据需要缩放到适当的大小。
- property toolTipᅟ: str¶
此属性保存系统托盘条目的工具提示。
在某些系统中,工具提示的长度是有限的。如有必要,工具提示将被截断。
- Access functions:
- property visibleᅟ: bool¶
此属性表示系统托盘条目是否可见。
将此属性设置为 true 或调用
show()使系统托盘图标可见;将此属性设置为 false 或调用hide()则隐藏它。- Access functions:
使用给定的
parent构造一个QSystemTrayIcon对象。图标最初是不可见的。
另请参阅
visible使用给定的
icon和parent构造一个QSystemTrayIcon对象。图标最初是不可见的。
另请参阅
visible- activated(reason)¶
- Parameters:
原因 –
ActivationReason
当用户激活系统托盘图标时,会发出此信号。
reason指定激活的原因。ActivationReason枚举了各种原因。另请参阅
返回系统托盘条目的当前上下文菜单。
另请参阅
返回系统托盘图标在屏幕坐标中的几何形状。
另请参阅
visible- hide()¶
隐藏系统托盘条目。
另请参阅
show()可见属性
iconᅟ的获取器。- static isSystemTrayAvailable()¶
- Return type:
布尔
如果系统托盘可用,则返回
true;否则返回false。如果系统托盘当前不可用但稍后变为可用,
QSystemTrayIcon将自动在系统托盘中添加一个条目,如果它是visible。- isVisible()¶
- Return type:
布尔
属性
visibleᅟ的获取器。- messageClicked()¶
当用户点击使用
showMessage()显示的消息时,会发出此信号。将指定的
menu设置为系统托盘图标的上下文菜单。当用户通过点击鼠标按钮请求系统托盘图标的上下文菜单时,菜单将弹出。
属性
iconᅟ的设置器。属性
toolTipᅟ的设置器。- setVisible(visible)¶
- Parameters:
visible – 布尔值
另请参阅
属性
visibleᅟ的设置器。- show()¶
在系统托盘中显示图标。
另请参阅
hide()visible- showMessage(title, msg[, icon=QSystemTrayIcon.Information[, msecs=10000]])¶
- Parameters:
标题 – str
msg – str
图标 –
MessageIconmsecs – 整数
显示一个带有给定
title、message和icon的气球消息,持续时间为millisecondsTimeoutHint中指定的时间。title和message必须是纯文本字符串。用户可以点击消息;当这种情况发生时,将发出
messageClicked()信号。请注意,消息的显示取决于系统配置和用户偏好,消息可能根本不会出现。因此,不应将其作为提供关键信息的唯一手段。
在Windows上,当应用程序具有焦点时,系统通常会忽略
millisecondsTimeoutHint。在Qt 5.2中已转换为一个槽。
另请参阅
- showMessage(title, msg, icon[, msecs=10000])
- Parameters:
标题 – str
msg – str
图标 –
QIconmsecs – 整数
此函数重载了
showMessage()。显示一个带有给定
title、message和自定义图标icon的气球消息,持续时间为millisecondsTimeoutHint中指定的时间。- static supportsMessages()¶
- Return type:
布尔
如果系统托盘支持气球消息,则返回
true;否则返回false。另请参阅
- toolTip()¶
- Return type:
字符串
另请参阅
属性
toolTipᅟ的获取器。