如何在 QML 的 ColumnLayout 中使用 topMargin

Posted

技术标签:

【中文标题】如何在 QML 的 ColumnLayout 中使用 topMargin【英文标题】:how to use topMargin in ColumnLayout in QML 【发布时间】:2015-10-29 17:36:09 【问题描述】:

我正在尝试在 ColumnLayout 中使用 topMargin。但我面临一些问题。 有人能帮我解决这个问题吗?

这是我的代码

import QtQuick 2.3
import QtQuick.Controls 1.2
import QtQuick.Controls.Styles 1.2
import QtQuick.Layouts 1.1

ApplicationWindow 
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    Rectangle
        anchors.fill: parent
        ColumnLayout
            id: columlayout
            Rectangle
                width: 100
                height: 100
                color: "red"
            
            Rectangle
                Layout.topMargin: 50
                width: 100
                height: 100
                color: "green"
            
            Rectangle
                width: 100
                height: 100
                color: "blue"
            
        
    

问题:

无法分配给不存在的属性“topMargin”

【问题讨论】:

【参考方案1】:

margin properties 是在 QtQuick.Layouts 1.2 中引入的,因此您必须导入该版本,而不是 1.1

【讨论】:

以上是关于如何在 QML 的 ColumnLayout 中使用 topMargin的主要内容,如果未能解决你的问题,请参考以下文章

QML/QtQuick:使图像在 ColumnLayout 中仅占用可用高度

QML 将 ColumnLayout 子项堆叠在一起?

Qt5-QML:ColumnLayout 在嵌套循环中覆盖另一个 ColumnLayout

QML在Component中使用createObject填充ColumnLayout

QML ColumnLayout 不尊重 minimumHeight

ColumnLayout 中的 QML TabView