Sur cette page

Type non créable

Cette catégorie d'avertissement est orthographiée [uncreatable-type] par qmllint.

L'espace de noms doit commencer par une lettre majuscule.

Qu'est-ce qui s'est passé ?

Vous avez utilisé un objet QML provenant d'un espace de noms en minuscules.

Pourquoi est-ce mauvais ?

Le langage QML interdit les espaces de noms en minuscules.

Exemple

import QtQuick as quick

quick.Item { ... }

Pour corriger l'avertissement, renommez l'espace de noms pour qu'il commence par une lettre majuscule :

import QtQuick as Quick

Quick.Item { ... }

Le type Singleton n'est pas créable

Qu'est-ce qui s'est passé ?

Vous avez essayé d'instancier un objet QML à partir d'un type singleton.

Pourquoi est-ce mauvais ?

Le langage QML interdit les instanciations de singletons.

Exemple

import QtQuick

Item {
    Qt { // note: Qt is a singleton type
        id: qt
    }

    property string someProperty: qt.uiLanguage
}

Pour corriger l'avertissement, utilisez le singleton directement sans l'instancier :

import QtQuick

Item {
    property string someProperty: Qt.uiLanguage
}

Type is not creatable

Qu'est-ce qui s'est passé ?

Vous avez essayé d'instancier un objet QML à partir d'un type uncreatable type.

Pourquoi est-ce mauvais ?

Les types non créables sont spécifiquement marqués pour interdire les instanciations. Il se peut que vous utilisiez à tort un type qui ne devrait être utilisé qu'en tant que type attaché ou en tant qu'interface.

Exemple

Mauvaise utilisation d'un type attaché

import QtQuick

Item {
    Keys {
        onPressed: function (key) { ... }
    }
}

Pour corriger l'avertissement, utilisez le type attaché Keys au lieu de l'instancier :

import QtQuick

Item {
    Keys.onPressed: function (key) { ... }
}

Mauvaise utilisation d'une interface

import QtQuick

Item {
    property PointerHandler myHandler: PointerHandler {}
}

Pour corriger l'avertissement, utilisez un type dérivé plus spécifique comme TapHandler:

import QtQuick

Item {
    property PointerHandler myHandler: TapHandler {}
}

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