QWindow :: showMinimized()不起作用,对吗?

时间:2019-09-14 06:21:11

标签: qt qml qt5

在macOS 10.13.6-Qt 5.13.0中 我发现showMaximized()和showNormal()可以用,但是showMinimized()不能用。

import QtQuick 2.12
import QtQuick.Window 2.12

Window {
    id: root
    width: 890
    height: 600
    minimumWidth: 890
    minimumHeight: 600
    flags: Qt.FramelessWindowHint | Qt.Window

    Rectangle {
        anchors.centerIn: parent
        anchors.verticalCenterOffset: -25
        width: 200
        height: 50
        color: "#556699"
        Text {
            anchors.centerIn: parent
            text: "minimized window"
            font.pointSize: 20
        }

        MouseArea {
            anchors.fill: parent
            onClicked: {
                console.log("minimized button clicked")
                root.showMinimized()
            }
        }
    }

    Rectangle {
        anchors.centerIn: parent
        anchors.verticalCenterOffset: 45
        width: 200
        height: 50
        color: "#886699"
        Text {
            anchors.centerIn: parent
            text: "maximized window"
            font.pointSize: 20
        }

        MouseArea {
            anchors.fill: parent
            onClicked: {
                console.log("maximized button clicked")
                if(root.width === Screen.width) {
                    root.showNormal()
                } else {
                    root.showMaximized()
                }
            }
        }
    }
}

运行此代码时,您会发现“最小化窗口”按钮不起作用,但另一个按钮可以正常工作。 我发现这与“标志:Qt.FramelessWindowHint | Qt.Window”有关,当我删除它时就可以了。

0 个答案:

没有答案