在Qt 5.15.1上,我想使用Connections
:连接到QMLItem
的objectNameChanged
信号
import QtQuick 2.15
import QtQuick.Window 2.15
Window {
visible: true
Item {
id: foo
}
Connections {
target: foo
// onObjectNameChanged: console.log(foo.objectName) // old syntax, causes "Implicitly defined onFoo properties in Connections are deprecated."
function onObjectNameChanged() {
console.log(foo.objectName)
}
}
}
该代码产生以下错误:
重复的方法名称:属性更改信号或超类信号的无效覆盖
我当然可以这样写:
Item {
id: foo
onObjectNameChanged: console.log(foo.objectName)
}
但是我需要使用CCD_ 4。
如何解决此问题?
来自我的评论:
错误的原因很容易解释:Connections也是一个QObject,因此它也有objectName属性(和相关信号(,当映射目标的objectName属性时,它会产生问题,我认为没有解决方法,因此我建议您报告错误。