@kabanov21

Как в GridLayout(PyQt5) сделать возможность менять размеры ячеек мышкой?

GridLayout {
   id: gridLayout
   columns: 4
   Label {
   }
 
   TextField {
      Layout.columnSpan: 3
   }
}
  • Вопрос задан
  • 299 просмотров
Пригласить эксперта
Ответы на вопрос 1
@4rtzel
Мне кажется, что это не получиться сделать с помощью GridLayout'а (или будет достаточно сложно). Возможно TableView или SplitView лучше подойдут для этого.

Быстрое, костыльное решение с помощью SplitView:
import QtQuick 2.9
import QtQuick.Window 2.2
import QtQuick.Controls 1.4

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

    SplitView {
        anchors.fill: parent
        orientation: Qt.Vertical
        SplitView {
            anchors.left: parent.left
            anchors.right: parent.right
            height: parent.height / 2
            orientation: Qt.Horizontal

            Rectangle {
                id: rect1
                width: parent.width / 2
                onWidthChanged: {rect3.width = width}
                color: "lightblue"
            }
            Rectangle {
                id: rect2
                width: parent.width / 2
                onWidthChanged: {rect4.width = width}
                color: "lightgreen"
            }
        }
        SplitView {
            anchors.left: parent.left
            anchors.right: parent.right
            height: parent.height / 2
            orientation: Qt.Horizontal

            Rectangle {
                id: rect3
                width: parent.width / 2
                onWidthChanged: {rect1.width = width}
                color: "blue"
            }
            Rectangle {
                id: rect4
                width: parent.width / 2
                onWidthChanged: {rect2.width = width}
                color: "green"
            }
        }
    }
}

5b45193a1184d343332859.gif
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы