Dynamische QML-Bereichsbestimmung funktioniert nicht (ReferenceError)

Dynamische QML-Bereichsbestimmung funktioniert nicht (ReferenceError)

Ich versuche das Beispiel zu reproduzierenHierbei dem dieTitelseite.qmlKomponente erzeugt zweiTitelTextFälle, obwohl dieTitelTextTyp befindet sich in einer separaten Datei (unter Abschnitt: Komponenteninstanzhierarchie). Im Ubuntu SDK habe ich ein neues Projekt erstellt (QML App mit C++-Plugin (qmake)). MeinMain.qmlsieht aus wie das:

import QtQuick 2.4
import Ubuntu.Components 1.2
import ScopeTesting 1.0

MainView {
    objectName: "mainView"
    applicationName: "scopetesting.username"
    width: units.gu(100)
    height: units.gu(75)
    Item {
        property string title
        TitleText {
            size: 22
            anchors.top: parent.top
        }
        TitleText {
            size: 18
            anchors.bottom: parent.bottom
        }
    }
}

DerTitelText.qmlsieht aus wie im Beispiel:

import QtQuick 2.4
import Ubuntu.Components 1.2
import ScopeTesting 1.0

Text {
    property int size
    text: "<b>" + title + "</b>"
    font.pixelSize: size
}

Was ich bekomme, ist ein ReferenceError:

...TitleText.qml:7: ReferenceError: Titel ist nicht definiert

Was übersehe ich hier? Kann mir jemand helfen?

Antwort1

Objekte können die Eigenschaften anderer Objekte nicht direkt verwenden, es sei denn, sie gehören zum Stammobjekt der Datei.

Wechseln Sie property string titlezu MainViewoder geben Sie eine ID ein Itemund verwenden Sie sie titleüber die ID.

verwandte Informationen