c++ - 修改控件时回调的速率限制

标签 c++ qt qml

假设我有一个 slider 控件,我的用户非常快地来回滑动它。

是否可以限制 QML 调用“新值可用”C++ 回调的速率?

最佳答案

如果你想完全避免在拖动 slider 时更新值,你可以使用 updateValueWhileDragging Qt Quick Controls 1 中的属性,以及 live Qt Quick Controls 2 中的属性。

在 Qt Quick Controls 2 中, slider 控件有一个 valueAt()可以随时调用以检查值的函数。

如果您在 QML 中编写自己的 slider ,则可以使用 Timer 限制变化信号的发射,例如:

property int value

readonly property int actualValue: // some calculation...

Timer {
    running: slider.pressed
    interval: 200
    repeat: true
    onTriggered: slider.value = slider.actualValue
}

关于c++ - 修改控件时回调的速率限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42284163/

相关文章:

c++ - Qt 4.6 OpenGL GLSL

c++ - 如何访问子 UI 文件

python - 重新实现QAbstractTableModel后TableView没有数据显示在表格中

使用 OpenGL 进行 Qt 渲染

c++ - 初始化类的静态常量成员,其中成员是私有(private)类型?

python - QtWebkit:loadFinished 和 loadProgress 槽永远不会执行

c++ - 使用 COM 进行异常安全的内存处理

qt - 三态复选框 : deny user from setting it to PartiallyChecked

c++ - 异常处理和成员变量

c++ - volatile 和 const 的成员函数