QMLでのWindows通知トースト表示について


QMLのSystemTrayIcon.showMessageを使った際の表示内容について

QMLのSystemTrayIcon.showMessageを使用すると、Wundowsの通知トーストを表示できます。

Window {
    width: 640
    height: 480
    visible: true
    title: qsTr("Hello World")

    Button {
        text: qsTr("Test")
        onClicked: {
            systemTrayIcon.showMessage(qsTr("Title"), qsTr("Message"))
        }
    }

    SystemTrayIcon {
        id: systemTrayIcon
        visible: true
        icon.source: "qrc:/icon.png"
    }
}

こんな感じのQMLを実行すると

こんなトーストが表示されます。


見た通り、一番下に実行ファイル名(~.exe)が表示されます。
ここを任意の文字列に変えたい場合、.proファイルに、VERSIONとQMAKE_TARGET_DESCRIPTIONを追加します。

...
VERSION=1.0.0.0
win32:QMAKE_TARGET_DESCRIPTION = "test test test"
...

すると

こんな風に変更することができます。


ここに日本語を表示したい場合、そのまま日本語を書くと

こんな感じに見事に文字化けします。
が、.proファイルをShift-JISで保存すれば日本語が正常に表示されました。


ということで、トーストの一番下に「~.exe」が表示されちゃってかっこ悪い問題が解消しました。(^^;)