我想设置QML应用程序窗口的最小宽度和高度,以便完全显示内容项(不被裁剪)。
import QtQuick 2.5
import QtQuick.Controls 1.4
ApplicationWindow {
visible: true
width: 100
height: 100
title: "test"
minimumWidth: circle.width
minimumHeight: circle.height // + menuBar.height
menuBar: MenuBar {
Menu {
title: qsTr("File")
MenuItem {
text: qsTr("Exit")
onTriggered: Qt.quit();
}
}
}
Rectangle {
id: circle
anchors.centerIn: parent
width: 200
height: 200
color: "red"
radius: width * 0.5
}
}
这是结果:
正如您所见,设置最小宽度没有问题。但设置最小高度时会出现菜单栏高度的偏差。问题是,添加像menuBar.height
这样的内容不起作用,因为该属性不存在。
那么问题是:我如何设置应用程序窗口的大小,以便不剪切内容项(由width
/height
或implicitWidth
/implicitHeight
给出)?
注意:实际上,内容项不是一个红色圆圈,而是一个游戏画布,我希望能够动态调整其大小。