Fehlende Eigenschaft
Diese Warnkategorie wird von qmllint [missing-property] geschrieben.
Kann nicht einer nicht existierenden Standardeigenschaft zugewiesen werden
Was ist passiert?
Sie haben ein Objekt einer nicht existierenden Standardeigenschaft zugewiesen.
Warum ist das schlecht?
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 wollen, oder, wenn Sie der Autor des Typs sind, markieren Sie 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 einen Ausdruck einer nicht existierenden Eigenschaft zugewiesen.
Warum ist das schlecht?
Die QML-Engine kann diesen Ausdruck zur Laufzeit nicht zuordnen.
Beispiel
Um diese Warnung zu beheben, entfernen Sie die Bindung oder korrigieren Sie einen möglichen Tippfehler:
Member not found on type
Was ist passiert?
Sie haben auf einen Member in einem Field-Member-Ausdruck zugegriffen, der vom QML-Tooling nicht gefunden werden kann. Ein Field-Member-Ausdruck ist ein Ausdruck der Form someId.someProperty.
Es kann sein, dass der Member gar nicht existiert, z.B. wenn Sie einen Tippfehler gemacht haben. Oder er existiert zur Laufzeit (weil er auf einem bestimmten Subtyp existiert, der immer vorhanden ist), aber nicht auf dem statisch deklarierten Typ.
Warum ist das schlecht?
Die QML-Werkzeuge können dieses Mitglied nicht finden, was bedeutet, dass Funktionen wie Go-to-Definition und Autovervollständigung nicht funktionieren. Zur Laufzeit kann es zu einer Fehlermeldung kommen oder Sie erhalten ein falsches Ergebnis, wenn der Member tatsächlich nicht existiert. Es wird kein Fehler auftreten, wenn das Element zur Laufzeit tatsächlich immer vorhanden ist, allerdings kann es in diesem Fall zu Leistungseinbußen aufgrund von verpassten Optimierungen kommen.
Beispiel
Eigenschaft existiert nicht wirklich
Um diese Warnung zu beheben, entfernen Sie die Bindung oder korrigieren Sie einen möglichen Tippfehler:
Eigenschaft existiert, aber 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 einen genaueren 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 currentItem -Eigenschaft von messageView Item , die keine sender -Eigenschaft hat: sender ist nur in Message definiert. Hier wissen wir jedoch, dass currentItem immer ein Message enthält, so dass wir currentItem mit Hilfe einer Typprüfung auf Message übertragen 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.