【发布时间】:2013-11-05 06:12:40
【问题描述】:
类似于 C++ 中的 this 关键字,我想要一个 QML 元素将自己传递给 JS 函数,或者让它在另一个元素上为自己设置一个属性。这可能吗?
例如:
Rectangle{
id:theParent
property var theElement
SomeElement{
id:theChild
MouseArea {
anchors.fill:parent
onClicked: {
someJsFunction(*whatGoesHere*)
parent.theElement=*whatGoesHere*
}
}
或者,考虑一下:
Rectangle{
id:theParent
property var theElement
SomeElement{
id:theChild
}
然后,在 SomeElement.qml 中:
Rectangle{
MouseArea {
anchors.fill:parent
onClicked: {
someJsFunction(*whatGoesHere*)
parent.theElement=*whatGoesHere*
}
}
}
在这种情况下,*whatGoesHere* 将是调用它们的 SomeElement 的实例。
这在 QML 中可行吗?我认为id 属性是有意义的,但是根据文档,您无法查询id 字段的值,并且无论如何,如果我的SomeElement 在单独的文件,并且上面的 whatGoesHere 处理出现在该单独的文件中,而不是在特定实例中。
【问题讨论】: