Qt/QML: 将 WebEngineView 放入 ListView 并调用 loadHtml()

Qt/QML: Putting WebEngineView in a ListView and calling loadHtml()

如果我在 ListView 委托中有一个 WebEngineView,我如何在加载委托时调用 loadHtml?例如:

ListView
{
    model: myModel

    delegate: Component
    {
        Item:
        {
            WebEngineView
            {
                id: myWebView
                text: myWebView.loadHtml(model.modelData.htmlText) 
            }
        }
    }
}

以上是我想做的事情的想法。是否有我可以为每个可以调用 myWebView.loadHtml() 的委托项目连接的信号?

我不知道 WebEngineViewtext-属性,但到目前为止我从未使用过它。

我想,你想要的是这样的 Component.onCompleted-handler:

ListView {
    model: myModel
    delegate: Component {
        Item {
            WebEngineView {
                id: myWebView
                Component.onCompleted: loadHtml(model.modelData.htmlText, baseURL)
            }
        }
    }
}

我不知道你的用例,但 loadHtml 方法有第二个参数供 baseURL 寻找资源,例如 CSS 或图像,这可能被你需要