Вопрос:
Я хочу создать макет в QML, и я хотел бы добавить элемент-разделитель (нижний выбранный элемент на изображении ниже) так же, как вы это делаете с помощью виджетов:
Но я не мог найти ничего, чтобы соответствовать этому на стороне QtQuick вещей… возможно ли иметь такой макет в QML без использования системы привязки?
Я бы предпочел подход макетов…
Лучший ответ:
Вы можете просто использовать Item с 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 } } }
EDIT: альтернативно здесь вы могли бы использовать Column без элемента spacer, так как Column просто позиционирует своих детей сверху вниз и не распространяет их, чтобы взять все свободное пространство.