0

关于在 QtQuick 2.0 中将组件动态插入到堆栈布局中,我有一个可能很简单的问题。请参阅以下代码:

import QtQuick 2.12
import QtQuick.Window 2.12
import QtQuick.Layouts 1.12
import QtQuick.Controls 2.12


ApplicationWindow {
    id: mainWindow

    minimumWidth: 640
    minimumHeight: 480

    visible: true

    Component {
        id: stackItemComponent

        Item {  
            Rectangle
            {
                color: "blue"
                anchors.fill: parent
            }
        }
    }

    Item {
        anchors.fill: parent

        StackLayout {
            id: stack

            anchors.fill: parent                      
        }

        MouseArea {
            anchors.fill: parent

            onClicked: {
                var item = stackItemComponent.createObject(stack)

                // Activating this does not solve the problem
                //item.Layout.fillWidth = true
                //item.Layout.fillHeight = true
            }
        }
    }
}

所示版本通过单击窗口将简单组件插入到堆栈布局中,但插入的矩形未按预期调整大小。正如我在文档中所读到的,附加属性“Layout.fillWidth”和“Layout.fillHeight”在这种类型的布局中默认为“true”,因此不需要手动设置它们。但如果我这样做,它也不能解决问题。它需要手动调整窗口大小才能正确显示布局。

我在这里想念什么?

4

0 回答 0