c++ - 不允许最大化/显示 QML 中的应用程序

标签 c++ linux qml qt5

我在 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 Viewer 中测试这段代码,它无论如何都会启动它的窗口,尽管 QML 窗口是隐藏的

关于c++ - 不允许最大化/显示 QML 中的应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27172872/

相关文章:

c++ - 为什么使用 QQuickWindow::grabWindow() 会导致窗口变成图像?

c++ - 无法在不破坏堆叠顺序的情况下使 QQuickWidget 背景透明

c++ - 为什么不能在 C++ 类中重新定义类型名称?

c++ - 我应该释放内部分配的 MFT 输出缓冲区的返回 IMFSample 吗?

linux - 错误 : undefined reference to NetCDF functions

c++ - Qt QQuickView 视觉错误/调整大小时闪烁

c++ - 如何将私有(private)成员函数作为参数传递

c++ - 从重载函数中选择常量表达式?

linux - BlueZ 的蓝牙库 (Windows)

php - 502 高负载下使用 PHP-FPM 的 nginx 网关错误