Qt / QML:WebEngineView和ScrollView

时间:2017-03-24 01:27:00

标签: c++ qt qml qtwebengine

我有桌面应用,其中ScrollView包含ListView,其中每个代表都包含多个小部件,包括WebEngineView

ScrollView
{
    id: myScrollView
    anchors.fill: parent;

    ListView
    {
        id: myListView
        delegate: Item
        {
            Rectangle
            {
                Text ...
                Text ...
                // other stuff

                WebEngineView
                {
                    id: myWebEngineView
                    Component.onCompleted:
                    {
                        loadHtml(model.modelData.someHTMLData);
                    }                
                }
            }
        }
    }
}

我遇到的问题是滚动。在Mac上,如果我使用触摸板滚动,ListView仅在鼠标悬停在其中一个非WebEngineView小部件上时滚动。

我怀疑WebEngineView小部件正在捕获鼠标消息,但我找不到阻止这种情况发生的方法。我怎么能这样做?

1 个答案:

答案 0 :(得分:0)

我对Qt Quick了解的一件事是它有input focus

根据这一点,您可以使用FocusScopefocus property

例如,将ListView的焦点设置为true,将委托与FocusScope放在focus: false中。或者将WebEngineView的焦点设置为false。

希望这有助于=)