Also gut. Ich dachte, ich hätte das alles verstanden, aber offensichtlich habe ich etwas falsch gemacht, und ich kann beim besten Willen nicht verstehen, was. Ich habe die Tutorials auf den Buchstaben gefolgt (ich überprüft), aber kann nicht bekommen, es zu arbeiten, so hier, lassen Sie mich eine einfache Frage stellen.
Ich habe eine QObject-basierte Klasse erstellt, die eine einfache QString-Variable hat, die den Namen der Klasse speichert (dies ist nur zum Testen), es sieht wie folgt aus:
#include <QObject>
class CategoryPane : public QObject
{
Q_OBJECT
Q_PROPERTY(QString catName READ getCategoryName WRITE setCategoryName);
public:
explicit CategoryPane(QObject *parent = 0);
QString getCategoryName();
void setCategoryName(QString);
signals:
void nameChange();
private:
QString categoryName;
};
Dies wird mit der folgenden Funktion registriert: qmlRegisterType("ITI_UI", 1, 0, "CategoryPane");
Und ich versuche, die Namensvariable meiner CategoryPane-Klasse in einer QML-Datei auszugeben, die wie folgt aussieht:
import QtQuick 1.0
import ITI_UI 1.0
Rectangle {
width: 300
height: 300
CategoryPane {
id: whatever
catName: "ey"
Text {
text: whatever.catName
}
}
}
Aber ich erhalte die folgende Fehlermeldung: qrc:/main.qml:11:3: Cannot assign to non-existent default property
Hinweis: Ich erhalte keine Fehlermeldung, wenn ich das Feld Text {} entferne, aber dann wiederum kann ich meine Namenszeichenfolge nicht ausdrucken, die der ganze Punkt ist...
Vielen Dank im Voraus für Ihre Zeit und Geduld!