在变量之一上更改值

时间:2019-03-24 19:03:54

标签: qt qml

例如,我有

property var taskType: null
property var taskKind: null

因此,当我想每次这些可变变量之一运行一次脚本时,我会做类似的事情:

onTaskTypeChanged: { bla() }
onTaskKindChanged: { bla() }

如您所见,当其中之一发生更改时,我需要运行相同的功能...但是碰巧它们都同时更改,所以我希望只运行一次脚本...所以喜欢:

if (taskTypeChaned OR taskKindChanged) { bla() }

但这显然不正确...

那么qml是否有办法评估这两个变量之一,然后运行脚本?

1 个答案:

答案 0 :(得分:2)

您可以使用Qt.callLater函数:

onTaskTypeChanged: Qt.callLater(bla)
onTaskKindChanged: Qt.callLater(bla)