axe_lankaster13
@axe_lankaster13
C++ разраб с большими планами

При масштабировании окна приложения ломается отображение элементов?

Начал изучать QML, написал простенький код окошка "входа", где нужно ввести логин и пароль.
Код
import QtQuick 2.15
import QtQuick.Controls 2.15
import QtQuick.Layouts 1.12

Window {
    id: root
    title: qsTr("Diary")
    visible: true

    minimumWidth: columnLayout.implicitWidth
    minimumHeight: columnLayout.implicitHeight

    ColumnLayout {
        id: columnLayout
        anchors.fill: parent

        RowLayout {
            Label {
                text: qsTr("Login")
            }

            TextField {
                id: login
                placeholderText: qsTr("Login")
                Layout.fillWidth: true
            }
        }

        RowLayout {
            Label {
                text: qsTr("Password")
            }

            TextField {
                id: password
                placeholderText: qsTr("Password")
                Layout.fillWidth: true
            }
        }
        Item {
            Layout.fillHeight: true
        }
    }
}



Выглядит это вот так:
627833052290a762412737.png

Но если изменить размер окна мышью после запуска, то ломается отображение:
6278332921420201753348.png

При этом поля для ввода как-будто остались там же. Т.е. если навести мышь на место где, по-идее, должен находиться TextEdit, то туда и можно будет вводить текст - ломается только отображение.
В интернете на этот счёт ничего не нашёл...

Пробовал обновить версию Qt, использовать другой компилятор - не помогает.

Qt 6.2.3 и 6.3
ОС Windows 10 Pro
Компиляторы MSVC 2019 64bit и MINGW64
  • Вопрос задан
  • 47 просмотров
Пригласить эксперта
Ответы на вопрос 1
@Gytim
Item {
Layout.fillHeight: true
}

Как может один элемент занимать все пространство лайоута, когда у вас 2 итема уже?
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы