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

Don't allow to maximize/show the application in QML

本文关键字:显示 应用程序 最大化 QML 不允许      更新时间:2023-10-16

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

您可以使用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查看器中测试过这段代码,尽管QML窗口是隐藏的,但它还是会启动它的窗口