Hi, I have a simple Label that has to show a property of a rootProperty, the latter not yet being created when the qml is loaded/created. Quite frequently I use this construct and it did work perfectly in older Qt versions (something before 12.1 - that's the earliest I have installed now): @ //[main.qml, inside a Label] text: typeof Controller === "undefined" ? "" : Controller.successfulSteps @ Now this doesn't show anything anymore. The following workaround does show the desired result: property string dummy: "" @ text: dummy+(typeof Controller === "undefined" ? "" : Controller.successfulSteps) @ This seems very hackish. Is there a better way to achieve this? Why has the behavior been (apparently) changed at all in the first place? The Controller has been set as a root property after loading the QML page: @ //[main.cpp] QQmlApplicationEngine engine; engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); Controller controller(&engine); engine.rootContext()->setContextProperty("Controller", QVariant::fromValue<Controller*>(&controller)); @
I've asked this in forum.qt.io before (https://forum.qt.io/topic/107828/binding-based-on-typeof-doesn-t-work-any-more) BR Sebastian -- http://www.classintouch.de - Tablet-Software für Lehrer
_______________________________________________ Interest mailing list Interest@qt-project.org https://lists.qt-project.org/listinfo/interest