下面是使用toString()的另一种方法(它可能无法移植到未来版本的QML): function qmltypeof(obj, className) { // QtObject, string -> bool
// className plus "(" is the class instance without modification
// className plus "_QML" is the class instance with user-defined properties
var str = obj.toString();
return str.indexOf(className + "(") == 0 || str.indexOf(className + "_QML") == 0;
}
...
for (var i = 0; i < controls.children.length; ++i) {
if (qmltypeof(controls.children[i].height, "QDeclarativeRectangle"))
{
// do stuff
}
}... 展开详请