Qt 您所在的位置:网站首页 win7托盘图标透明没反应 Qt

Qt

2024-06-24 12:04| 来源: 网络整理| 查看: 265

SystemTrayIcon QML 类型

系统托盘图标。 More...

Import Statement: import Qt.labs.platform Since: Qt 5.8 Inherits:

QtObject

所有成员的列表,包括继承的成员 Properties available : bool geometry :矩形 icon icon.mask : bool icon.name :字符串 icon.source :网址 menu :菜单 supportsMessages : bool tooltip :字符串 visible : bool Signals activated(ActivationReasonreason) messageClicked() Methods void hide() void show() void showMessage(stringtitle, stringmessage, MessageIconicon, intmsecs) Detailed Description

SystemTrayIcon 类型为系统托盘中的应用程序提供图标。

许多桌面平台提供特殊的系统托盘或通知区域,应用程序可以在其中显示图标和通知消息。

以下示例显示如何创建系统托盘图标,以及如何使用 activated () 信号:

SystemTrayIcon { visible: true icon.source: "qrc:/images/tray-icon.png" onActivated: { window.show() window.raise() window.requestActivate() } } Tray menu

SystemTrayIcon 可以有一个在激活图标时打开的菜单。

以下示例说明如何将 Menu 分配给系统托盘图标:

SystemTrayIcon { visible: true icon.source: "qrc:/images/tray-icon.png" menu: Menu { MenuItem { text: qsTr("Quit") onTriggered: Qt.quit() } } } Notification messages

SystemTrayIcon可以显示通知消息。

以下示例介绍如何使用 showMessage () 显示通知消息,以及如何使用 messageClicked () 信号:

SystemTrayIcon { visible: true icon.source: "qrc:/images/tray-icon.png" onMessageClicked: console.log("Message clicked") Component.onCompleted: showMessage("Message title", "Something important came up. Click this to know more.") } Availability

目前,以下平台上的本机系统托盘图标为 available :

实现 freedesktop.org XEmbed system tray specification 的 X11 的所有窗口管理器和独立托盘实现。 所有实现 freedesktop.org D-Bus StatusNotifierItem specification 的桌面环境,包括最新版本的 KDE 和 Unity。 所有受支持的 macOS 版本。请注意, showMessage () 必须安装 Growl 通知系统才能在 10.8 (Mountain Lion) 之前的 OS X 上显示消息。

Qt 实验室平台模块使用 Qt Widgets 作为没有可用本机实现的平台的后备方案。因此,使用 Qt 实验室平台模块中的类型的应用程序应链接到 Qt Widget 并使用 QApplication 而不是 QGuiApplication 。

要链接 QtWidgets 库,请将以下内容添加到您的 qmake 项目文件中:

QT += widgets

在 main() 中创建 QApplication 的实例:

#include #include int main(int argc, char *argv[]) { QApplication app(argc, argv); QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); return app.exec(); }

Note: 不保证 Qt.labs 模块中的类型在未来版本中保持兼容。

另请参见 Menu 。

Property Documentation

[只读]可用: bool

该属性保存系统托盘是否可用。

[自 Qt.labs.platform 1.1 (Qt 5.12) 起] 几何: rect

该属性保存系统托盘图标的几何形状。

该属性是在 Qt.labs.platform 1.1 (Qt 5.12) 中引入的。

[自 Qt.labs.platform 1.1 (Qt 5.12) 起] icon.mask : bool

该属性保存系统托盘图标。

SystemTrayIcon { icon.mask: true icon.source: "qrc:/images/tray-icon.png" }

此 QML 属性是在 Qt.labs.platform 1.1 (Qt 5.12) 中引入的。

菜单: Menu

该属性包含系统托盘图标的菜单。

[只读] 支持消息: bool

该属性保存系统托盘图标是否支持通知消息。

另请参见 showMessage ()。

工具提示: string

该属性保存系统托盘图标的工具提示。

可见: bool

该属性保存系统托盘图标是否可见。

默认值为 false 。

Signal Documentation

activated(ActivationReason reason)

当用户激活系统托盘图标时,会发出此信号。这reason参数指定如何激活系统托盘图标。

Available reasons:

Constant Description SystemTrayIcon.Unknown Unknown reason SystemTrayIcon.Context 请求系统托盘图标的上下文菜单 SystemTrayIcon.DoubleClick 双击系统托盘图标 SystemTrayIcon.Trigger 单击系统托盘图标 SystemTrayIcon.MiddleClick 用鼠标中键单击系统托盘图标

注:对应的处理程序为 onActivated 。

messageClicked()

当用户单击通知消息时会发出此信号。

注:对应的处理程序为 onMessageClicked 。

另请参见 showMessage ()。

Method Documentation

voidhide()

隐藏系统托盘图标。

voidshow()

显示系统托盘图标。

voidshowMessage(string title, string message, MessageIcon icon, int msecs)

显示带有给定的系统托盘消息title,messageandicon指定的时间msecs.

注意:系统托盘消息取决于系统配置和用户首选项,可能根本不会显示。因此,不应将其作为提供关键信息的唯一手段。

另请参见 supportsMessages 和 messageClicked ()。

© The Qt Company LtdLicensed under the GNU Free Documentation License, Version 1.3. https://doc.qt.io/qt-6.2/qml-qt-labs-platform-systemtrayicon.html



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有