Auf dieser Seite

Enum außerhalb des Stammelements deklariert

Diese Warnkategorie wird von qmllint als „ [non-root-enum] “ bezeichnet.

Außerhalb des Stammelements deklarierte Enumeration

Was ist passiert?

Eine Enum wurde außerhalb des Stammelements der Komponente deklariert.

Warum ist das ein Problem?

Sie ist nicht zugänglich. Der Zugriff auf Enums erfolgt über <Komponentenname>.<optionaler Enum-Name>.<Enum-Eintrag>. Befindet sich die Enum nicht an der Wurzel der Komponente, funktioniert diese Suche nicht.

Beispiel

// Main.qml
import QtQuick

Item {
    Item {
        id: item
        enum Color { Red, Green, Blue }
    }
}

Um diese Warnung zu beheben, verschieben Sie die Enumeration in die Wurzel der Komponente:

// Main.qml
import QtQuick

Item {
    enum Color { Red, Green, Blue } // Accessible in Main.qml but also from other files
    Item {
        id: item
    }
}

© 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.