SystemTrayIcon QML Type

システムトレイアイコン。もっと見る...

Import Statement: import Qt.labs.platform
Inherits:

QtObject

プロパティ

シグナル

メソッド

  • void hide()
  • void show()
  • void showMessage(string title, string message, MessageIcon icon, int msecs)

詳細説明

SystemTrayIcon 型は、システムトレイにあるアプリケーションのアイコンを提供します。

多くのデスクトップ・プラットフォームは、特別なシステム・トレイまたは通知領域を提供し、アプリケーションはそこにアイコンと通知メッセージを表示することができます。

次の例では、システムトレイアイコンを作成する方法と、activated() シグナルを使用する方法を示します:

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

    onActivated: {
        window.show()
        window.raise()
        window.requestActivate()
    }
}

トレイメニュー

SystemTrayIcon は、アイコンがアクティブになったときに開くメニューを持つことができます。

次の例は、システムトレイアイコンにMenu を割り当てる方法を示しています:

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

    menu: Menu {
        MenuItem {
            text: qsTr("Quit")
            onTriggered: Qt.quit()
        }
    }
}

通知メッセージ

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.")
}

可用性

ネイティブのシステムトレイアイコンは、現在以下のプラットフォームでavailable です:

Qt Labs Platform モジュールは、ネイティブ実装が利用できないプラットフォームでのフォールバックとして Qt Widgets を使用します。そのため、Qt Labs Platform モジュールの型を使用するアプリケーションは、QtWidgets にリンクし、QGuiApplication の代わりにQApplication を使用する必要があります。

QtWidgets ライブラリにリンクするには、qmake プロジェクトファイルに以下を追加します:

QT += widgets

main()QApplication のインスタンスを作成します:

#include <QApplication>
#include <QQmlApplicationEngine>

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

注意: Qt.labs モジュールの型は、将来のバージョンでも互換性が保たれることを保証するものではありません。

Menuも参照してください

プロパティ Documentation

available : bool [read-only]

このプロパティは、システムトレイが利用可能かどうかを保持します。


geometry : rect [since Qt.labs.platform 1.1 (Qt 5.12)]

このプロパティは、システムトレイアイコンのジオメトリを保持します。

このプロパティは Qt.labs.platform 1.1 (Qt 5.12) で導入されました。


icon group

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

icon.name : string [since Qt.labs.platform 1.1 (Qt 5.12)]

icon.source : url [since Qt.labs.platform 1.1 (Qt 5.12)]

このプロパティは、システムトレイアイコンを保持します。

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

この QML プロパティは、Qt.labs.platform 1.1 (Qt 5.12) で導入されました。


このプロパティは、システムトレイアイコンのメニューを保持します。


supportsMessages : bool [read-only]

このプロパティは、システムトレイアイコンが通知メッセージをサポートしているかどうかを保持します。

showMessage()も参照してください


tooltip : string

このプロパティは、システム・トレイ・アイコンのツールチップを保持します。


visible : bool

このプロパティは、システム・トレイ・アイコンを表示するかどうかを保持します。

デフォルト値はfalse です。


シグナル・ドキュメント

activated(ActivationReason reason)

このシグナルは、ユーザによってシステム・トレイ・アイコンがアクティブにされたときに発せられる。reason 引数は、システム・トレイ・アイコンがどのようにアクティベートされたかを指定する。

利用可能な理由

定数説明
SystemTrayIcon.Unknown不明な理由
SystemTrayIcon.Contextシステムトレイアイコンのコンテキストメニューが要求された。
SystemTrayIcon.DoubleClickシステムトレイアイコンがダブルクリックされた
SystemTrayIcon.Triggerシステムトレイアイコンがクリックされた
SystemTrayIcon.MiddleClickシステムトレイアイコンがマウスの中ボタンでクリックされた

注: 対応するハンドラはonActivated です。


messageClicked()

このシグナルは、通知メッセージがユーザーによってクリックされたときに発行されます。

: 対応するハンドラはonMessageClicked です。

showMessage()も参照してください


メソッド・ドキュメント

void hide()

システム・トレイ・アイコンを非表示にします。


void show()

システム・トレイ・アイコンを表示します。


void showMessage(string title, string message, MessageIcon icon, int msecs)

msecs で指定された時間、指定されたtitlemessageicon のシステム・トレイ・メッセージを表示する。

注意: システム・トレイ・メッセージは、システム構成とユーザー設定に依存し、まったく表示されないこともある。そのため、重要な情報を提供する唯一の手段として、このメッセージに頼るべきではありません。

supportsMessagesmessageClicked()も参照してください


©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。