Non qualifié
Cette catégorie d'avertissement est orthographiée [unqualified] par qmllint.
Accès non qualifié
Qu'est-ce qui s'est passé ?
Vous avez accédé à un élément parent sans son identifiant.
Pourquoi est-ce mauvais ?
Cela rend le code plus difficile à lire et nuit aux performances.
Exemple
import QtQuick Item { property int helloWorld Item { property int unqualifiedAccess: helloWorld + 1 // not ok: Unqualified access here. } }
Pour corriger cet avertissement, faites référence à l'objet parent par son identifiant. Vous devrez d'abord ajouter un identifiant si l'objet n'en a pas.
import QtQuick Item { id: root property int helloWorld Item { property int unqualifiedAccess: root.helloWorld + 1 // ok: this access is qualified now! } }
Portée inconnue d'une propriété attachée/groupée
Qu'est-ce qui s'est passé ?
Vous avez utilisé un type de propriété attachée ou une propriété groupée introuvable. Cela peut être dû à une faute de frappe ou à une dépendance manquante du module QML.
Note : Si vous importez des modules QML avec des dépendances externes, vérifiez qu'ils sont effectivement installés et qu'ils se trouvent dans un chemin d'importation.
Pourquoi est-ce mauvais ?
Les composants dont l'étendue des propriétés attachées est inconnue ou dont les propriétés groupées sont inconnues ne seront pas créés à l'exécution : ils seront nuls à la place.
Exemple
Essayons d'utiliser la propriété attachée (inexistante) de Item ou la propriété groupée (inexistante) grouped de Item:
import QtQuick Item { Item.helloAttached: 44 // not ok: unknown attached property scope Item. [unqualified] grouped.helloGrouped: 44 // not ok: unknown grouped property scope grouped. [unqualified] }
En effet, Item n'a pas de type attaché ni de propriété groupée appelée item. Pour corriger cet avertissement, supprimez le type attaché et la propriété groupée.
Reportez-vous à Propriétés attachées et Gestionnaires de signaux attachés pour savoir comment utiliser les propriétés attachées et à Propriétés groupées pour savoir comment utiliser les propriétés groupées.
Aucun signal correspondant n'a été trouvé pour le gestionnaire
Qu'est-ce qui s'est passé ?
Vous avez utilisé un gestionnaire de signal sur un signal introuvable. Cela peut être dû à une faute de frappe dans le gestionnaire de signal ou à une dépendance de module QML manquante.
Remarque : le nom d'un gestionnaire de signal est on concaténé avec le nom du signal en majuscules. onHelloWorld gère le signal helloWorld et on_helloWorld gère _helloWorld, par exemple.
Note : Si vous importez des modules QML avec des dépendances externes, vérifiez qu'ils sont effectivement installés et qu'ils se trouvent dans un chemin d'importation.
Pourquoi est-ce mauvais ?
Les composants dont les gestionnaires de signaux sont inconnus ne seront pas créés au moment de l'exécution : ils seront alors nuls.
Exemple
Essayons d'écrire un gestionnaire de signal pour le signal (inexistant) mySignal:
import QtQuick Item { onMySignal: console.log("hello") // not ok: no matching signal found for handler "onMySignal" [unqualified] }
En effet, ce Item n'a pas de signal appelé mySignal. Pour corriger cet avertissement, supprimez le gestionnaire de signal ou ajoutez le signal manquant.
La définition implicite d'un gestionnaire de signal dans les connexions est obsolète.
Qu'est-ce qui s'est passé ?
Vous avez utilisé un gestionnaire de signal sur un type Connections.
Pourquoi est-ce mauvais ?
Ce type est déprécié.
Exemple
import QtQuick Window { id: root property int myInt Connections { target: root onMyIntChanged: console.log("new int", myInt) } }
Pour corriger cet avertissement, remplacez le signal handler binding par une fonction :
import QtQuick Window { id: root property int myInt Connections { target: root function onMyIntChanged() { console.log("new int", myInt) } } }
Voir aussi QML Coding Conventions - Unqualified Access.
© 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.