不允许在QML中最大化/显示应用程序

时间:2014-11-27 14:24:37

标签: c++ linux qml qt5

我在QML / C ++中有一个不应该被用户最大化/显示的应用程序。它应该始终保持最小化,当它从服务器收到消息时,它应该自己最大化。是否可以在QML中完成?我到处寻找,但我找不到与我的问题类似的东西。

1 个答案:

答案 0 :(得分:2)

您可以使用Window.Hidden标志启动一个窗口,并在收到信号时显示。简单的例子:

import QtQuick 2.3
import QtQuick.Window 2.2

Window {
    id:  mainWindow
    visibility: Window.Hidden
    width: 400
    height: 300

    Text {
        text: qsTr("Hello World")
        anchors.centerIn: parent
    }

        Timer {
            id: timer
            interval: 5000
            onTriggered: {
                console.log("signal received");
                mainWindow.visibility = Window.Maximized
            }
        }
        Component.onCompleted: {
            console.log("window created");
            timer.running = true;
        }
    }
}

注意 - 你没有在Qml Viewer中测试这段代码,它仍然会启动它的窗口,尽管隐藏了QML窗口