Fehlende Eigenschaft
Diese Warnkategorie wird von qmllint als „ [missing-property] “ bezeichnet.
Zuweisung an nicht vorhandene Standard-Eigenschaft nicht möglich
Was ist passiert?
Sie haben ein Objekt einer nicht vorhandenen Standard-Eigenschaft zugewiesen.
Warum ist das ein Problem?
Die QML-Engine kann dieses Objekt zur Laufzeit nicht zuweisen.
Beispiel
Um diese Warnung zu beheben, geben Sie die Eigenschaft an, an die Sie binden möchten, oder kennzeichnen Sie – falls Sie der Autor des Typs sind – eine Eigenschaft als Standard:
import QtQuick
Item {
component MyType: QtObject { property Item myItem; }
MyType {
myItem: Item {}
}
component AlternativeMyType: QtObject { default property Item myItem; }
AlternativeMyType {
Item {} // bound to myItem via default property
}
}Eigenschaft existiert nicht
Was ist passiert?
Sie haben einer nicht vorhandenen Eigenschaft einen Ausdruck zugewiesen.
Warum ist das ein Problem?
Die QML-Engine kann diesen Ausdruck zur Laufzeit nicht zuweisen.
Beispiel
Um diese Warnung zu beheben, entfernen Sie die Bindung oder korrigieren Sie einen möglichen Tippfehler:
Mitglied im Typ nicht gefunden
Was ist passiert?
Sie haben in einem Feldmitgliedsausdruck auf ein Mitglied zugegriffen, das von den QML-Tools nicht gefunden werden kann. Ein Feldmitgliedsausdruck ist ein Ausdruck der Form „ someId.someProperty “.
Das Element existiert möglicherweise gar nicht, beispielsweise wenn Sie einen Tippfehler gemacht haben. Oder es existiert zur Laufzeit (da es in einem bestimmten Untertyp vorhanden ist, der immer vorhanden ist), aber nicht im statisch deklarierten Typ.
Warum ist das ein Problem?
Die QML-Tools können dieses Member nicht finden, was bedeutet, dass Funktionen wie „Zur Definition springen“ und die Autovervollständigung nicht funktionieren. Zur Laufzeit kann es zu einem Fehler kommen oder du erhältst ein falsches Ergebnis, wenn das Element tatsächlich nicht existiert. Es tritt kein Fehler auf, wenn das Element zur Laufzeit tatsächlich immer vorhanden ist; in diesem Fall kann es jedoch aufgrund verpasster Optimierungen zu Leistungseinbußen kommen.
Beispiel
Die Eigenschaft existiert tatsächlich nicht
Um diese Warnung zu beheben, entfernen Sie die Bindung oder korrigieren Sie einen möglichen Tippfehler:
Eigenschaft existiert, aber der Typ ist nicht präzise genug
import QtQuick
import QtQuick.Controls.Basic
Item {
component Message : Item {
required property string sender
required property string text
}
ListView {
id: messageView
delegate: Message {}
}
Button {
text: "Reply to %1".arg(messageView.currentItem.sender) // not ok
}
}Um diese Warnung zu beheben, wandeln Sie das Objekt, aus dem Sie lesen, in den spezifischeren Typ um:
import QtQuick
import QtQuick.Controls.Basic
Item {
component Message : Item {
required property string sender
required property string text
}
ListView {
id: messageView
delegate: Message {}
}
Button {
text: "Reply to %1".arg((messageView.currentItem as Message).sender) // now ok
}
}Im Beispiel ist der deklarierte Typ der Eigenschaft „ currentItem “ von „ messageView “ „ Item “, die keine Eigenschaft „ sender “ besitzt: „ sender “ ist nur in „ Message “ definiert. Hier wissen wir jedoch, dass „ currentItem “ immer einen „ Message “ enthält, sodass wir „ currentItem “ mithilfe einer Typüberprüfung in „ Message “ umwandeln können.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.