14

でレイアウトを作成したいQMLのですが、ウィジェットを次のように使用するのと同じように、スペーサー アイテム (下の画像で選択された一番下のアイテム) を追加したいと思います。

ここに画像の説明を入力

しかし、私は物事の側面でこれに合うものを見つけることができませんでした...アンカーシステムを使用せQtQuickずにこの種のレイアウトを持つことは可能ですか? QML私はレイアウトアプローチを好む...

4

2 に答える 2

26

Itemwithを単純に使用できますLayout.fillHeight: true

import QtQuick 2.0
import QtQuick.Controls 1.4
import QtQuick.Layouts 1.3

ApplicationWindow {
    visible: true
    ColumnLayout {
        anchors.fill: parent
        Button {
            Layout.fillWidth: true
            text: "PushButton"
        }
        Button {
            Layout.fillWidth: true
            text: "PushButton"
        }
        Label {
            Layout.fillWidth: true
            text: "TextLabel"
        }
        Item {
            // spacer item
            Layout.fillWidth: true
            Layout.fillHeight: true
            Rectangle { anchors.fill: parent; color: "#ffaaaa" } // to visualize the spacer
        }
    }
}

編集:別の方法として、aは子を上から下に配置Columnするだけで、利用可能なすべてのスペースを占有するためにそれらを広げないため、スペーサー アイテムなしで a を使用することもできます。Column

于 2017-01-09T10:30:48.500 に答える