Qt 快速布局,填充父窗口并有边距

问题描述 投票:0回答:1

我正在尝试使用填充 ApplicationWindow 父级的列布局。我希望窗口有内容填充,所以我想我必须为布局添加边距。这就是我正在采取的方法:

import QtQuick
import QtQuick.Controls
import QtQuick.Layouts

ApplicationWindow {
    id: root

    width: rootLayout.implicitWidth
    height: rootLayout.implicitHeight
    minimumWidth: rootLayout.Layout.minimumWidth
    minimumHeight: rootLayout.Layout.minimumHeight

    ColumnLayout {
        id: rootLayout
        anchors.margins: 10
        anchors.fill: parent
   }
}

但是它不能正常工作,因为布局的最小高度属性没有考虑边距,并且窗口可能会收缩得超过应有的程度。

qt qml qt-quick
1个回答
0
投票

我已经能够通过将边距添加到窗口的最小尺寸计算中来做到这一点:

minimumWidth: rootLayout.Layout.minimumWidth + rootLayout.anchors.margins * 2
minimumHeight: rootLayout.Layout.minimumHeight + rootLayout.anchors.margins * 2

我觉得有点棘手

© www.soinside.com 2019 - 2024. All rights reserved.