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()
    }
}

트레이 메뉴

시스템 트레이 아이콘은 아이콘이 활성화될 때 열리는 메뉴를 가질 수 있습니다.

다음 예는 시스템 트레이 아이콘에 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참조하세요 .

속성 문서

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 에 지정된 시간 동안 지정된 title, messageicon 과 함께 시스템 트레이 메시지를 표시합니다.

참고: 시스템 트레이 메시지는 시스템 구성 및 사용자 기본 설정에 따라 달라지며 전혀 표시되지 않을 수도 있습니다. 따라서 중요한 정보를 제공하는 유일한 수단으로 이 메시지에 의존해서는 안 됩니다.

supportsMessagesmessageClicked()도 참조하세요 .


© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.