SystemTrayIcon QML Type
システムトレイアイコン。もっと見る...
Import Statement: | import Qt.labs.platform |
Inherits: |
プロパティ
- available : bool
- geometry : rect
(since Qt.labs.platform 1.1 (Qt 5.12))
- icon
(since Qt.labs.platform 1.1 (Qt 5.12))
- 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))
- icon.mask : bool
- menu : Menu
- supportsMessages : bool
- tooltip : string
- visible : bool
シグナル
- activated(ActivationReason reason)
- messageClicked()
メソッド
- 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 です:
- freedesktop.org XEmbed システムトレイ仕様を実装しているすべてのウィンドウマネージャと X11 用の独立トレイ実装。
- freedesktop.org D-Bus StatusNotifierItem 仕様を実装しているすべてのデスクトップ環境 (KDE と Unity の最近のバージョンを含む)。
- サポートされているすべてのバージョンの macOS。10.8 (Mountain Lion) 以前の OS X でshowMessage() がメッセージを表示するには、Growl 通知システムがインストールされている必要があります。
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 |
このプロパティは、システムトレイが利用可能かどうかを保持します。
geometry : rect |
このプロパティは、システムトレイアイコンのジオメトリを保持します。
このプロパティは 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) で導入されました。
menu : Menu |
このプロパティは、システムトレイアイコンのメニューを保持します。
supportsMessages : bool |
このプロパティは、システムトレイアイコンが通知メッセージをサポートしているかどうかを保持します。
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() |
システム・トレイ・アイコンを表示します。
msecs で指定された時間、指定されたtitle 、message 、icon のシステム・トレイ・メッセージを表示する。
注意: システム・トレイ・メッセージは、システム構成とユーザー設定に依存し、まったく表示されないこともある。そのため、重要な情報を提供する唯一の手段として、このメッセージに頼るべきではありません。
supportsMessages とmessageClicked()も参照してください 。
©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。