QML WebEngine 如何启用滚动动画

Posted

技术标签:

【中文标题】QML WebEngine 如何启用滚动动画【英文标题】:QML WebEngine how enable scroll animation 【发布时间】:2020-07-07 11:25:00 【问题描述】:

QWebEngineSettings 类具有 ScrollAnimatorEnabled 属性,但 WebEngineSettings (QML) 没有此属性。如何在 WebEngineView 中启用平滑滚动?

【问题讨论】:

看起来像一个错误或弱点。出于某种原因,他们提供QWebEngineSettings::WebAttribute 标志作为属性。看起来他们只是错过了一些标志。 【参考方案1】:

可以使用 --enable-smooth-scrolling 参数或这样运行程序:

int main(int argc, char *argv[])

    std::vector<char*> argv2(argc + 1);
    argv2.reserve(argc + 1);
    for (int i = 0; i < argc; ++i)
        argv2.emplace_back(argv[i]);
    argv2.emplace_back(const_cast<char*>("--enable-smooth-scrolling"));
    argc = int(argv2.size());
    argv = argv2.data();
    
    QApplication a(argc, argv);
    ...

【讨论】:

以上是关于QML WebEngine 如何启用滚动动画的主要内容,如果未能解决你的问题,请参考以下文章

Qt5.9 WebEngine 概述

Qt Quick QML Flickable 禁用轻弹并仅启用滚动

当代表具有不同的宽度时,QML ListView 滚动不会产生任何动画

带有自定义滚动条的 QML Listview

如何在 QML 中链接两个滚动视图?

如何在 QML 中动画添加和删除元素到布局?