要在QML中调用函数,需要先将该函数定义在一个JavaScript对象中。然后,您可以将此对象作为属性添加到QML组件中,并在需要时调用该函数。
以下是一个示例代码片段,展示如何在QML中调用JavaScript函数:
import QtQuick 2.0
Item {
id: rootItem
function myFunction() {
console.log("This is my function!");
}
Rectangle {
width: 200
height: 200
// 添加JavaScript对象作为属性
property var jsObj: {
foo: "bar",
myFunc: myFunction // 将myFunction添加到jsObj中
}
Button {
text: "Call function"
onClicked: {
// 调用myFunction
rootItem.jsObj.myFunc();
}
}
}
}
在上面的代码中,我们在根项(rootItem)中定义了一个名为“myFunction”的函数。然后,我们将一个包含该函数的JavaScript对象作为属性添加到Rectangle组件中。最后,我们在Button的onClicked事件处理程序中调用该函数。
请注意,您还可以将JavaScript对象定义为独立的文件,并通过import语句引入到QML中使用。