Я создал новый проект и добавил scrollview с прямоугольником. Когда я запускаю проект, прямоугольник не отображается, но если я добавлю другой элемент управления, он появится. Я не уверен, что я делаю неправильно, я хочу видеть прямоугольник всегда.Прямоугольник в Scrollview не отображается
import QtQuick 2.7
import QtQuick.Window 2.2
import QtQuick.Controls 1.4
Window {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
id: mainWindow
ScrollView{
anchors.left: parent.left
anchors.top: parent.top
anchors.bottom: parent.bottom
anchors.topMargin: 0
anchors.bottomMargin: 0
width: 289
Rectangle{
anchors.fill: parent
color: "blue"
MouseArea
{
anchors.fill: parent
onClicked: console.log("Click")
}
}
}
}
С помощью этого кода я получаю следующее окно (прямоугольник не виден):
Однако если добавить кнопку в этом ScrollView ...
ScrollView{
anchors.left: parent.left
anchors.top: parent.top
anchors.bottom: parent.bottom
anchors.topMargin: 0
anchors.bottomMargin: 0
width: 289
Rectangle{
anchors.fill: parent
color: "blue"
MouseArea
{
anchors.fill: parent
onClicked: console.log("Click")
}
}
Button{
text:"Test"
}
}
Что случилось с моим первым кодом (без кнопки)?
Так что я не могу сделать прямоугольник видимым без добавления другого элемента управления в scrollview? Это действительно странно. –
Нет, вы можете сделать «Прямоугольник» видимым, если вы придадите ему размер. В вашем примере вы сконфигурировали 'Rectangle' для заполнения содержимого' ScrollView'. Если у 'ScrollView' нет содержимого, тогда размер этого содержимого равен 0x0. Поэтому размер 'Rectangle' равен 0x0. – Tim
Оке, ты прав, спасибо! –