在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”有关,当我删除它时就可以了。