Как сделать так, чтобы обработчик onContentsSizeChanged в WebEngineView также вызывался для уменьшения высоты его содержимого
Пожалуйста, смотрите комментарий над звонком loadHtml
в следующем коде (последний из двух комментариев в коде). Если вы запустите приведенный ниже код, вы увидите, что при отображении исходного HTML-кода WebEngineView увеличивается в высоте, но когда все числа удаляются, за исключением 1
Это не дает усадки. Это ошибка или особенность? Если это функция, как она работает? Если это ошибка, пожалуйста, помогите мне избежать ее, и если вы можете, дайте мне ссылку на то, где она сообщается.
Каким образом предел постоянной стоимости приписывается height
свойство прямоугольника r
функционировать? Пожалуйста, прочитайте комментарий над этой строкой. Это ошибка или особенность? Если это особенность, подскажите, как она работает? Если это ошибка, пожалуйста, дайте мне ссылку, где она сообщается.
import QtQuick 2.10
import QtQuick.Window 2.10
import QtWebEngine 1.5
Window {
visible: true
width: 300
height: 200
Rectangle { id: r
width: parent.width
// If height is set to 0, 1, 2, 3 or 4 the web view or the rectangle
// won't resize to fit its contents (I think it is related to the
// border):
height: 5
border.width: 2
border.color: "green"
WebEngineView {
anchors.fill: parent
anchors.margins: {
left: 2
top: 2
right: 2
bottom: 2
}
onContentsSizeChanged: {
console.log(contentsSize)
r.height = contentsSize.height + 4
}
Component.onCompleted: {
// The following HTML code shows the numbers from 1 to 5, each
// on a separate line, and after 5 seconds it shows only the
// first number, the height of the document being reduced:
loadHtml("1<br>2<br>3<br>4<br>5" +
"<script>setTimeout(function(){document.body.innerHTML" +
" = '1';},5000)</script>")
}
}
}
}