Sur cette page

Qt Quick Contrôles - Liste de contacts

Une application QML utilisant Qt Quick Controls et une classe C++ qui implémente une simple liste de contacts.

L'exemple de la liste de contacts montre comment intégrer un backend C++ d'une manière compatible avec Qt Quick Designer. Pour les parties déclaratives de l'interface utilisateur, des fichiers .ui.qml sont utilisés et peuvent être édités visuellement dans Qt Quick Designer.

Application de liste de contacts indiquant les noms et les adresses

Backend C++

L'application de liste de contacts permet à l'utilisateur d'ajouter, de modifier et de supprimer des contacts. L'implémentation réelle est réalisée en C++ et exposée en tant que QAbstractListModel.

La classe ContactModel C++ est enregistrée dans un espace de noms, puis importée et instanciée par MainForm.ui.qml. Pour plus d'informations sur l'enregistrement de classes C++ en tant que types QML, voir Définir des types QML à partir de C++.

#include <QtQml/qqml.h>
...
qmlRegisterType<ContactModel>("Backend", 1, 0, "ContactModel");
...

Prise en charge du concepteur

Dans le sous-répertoire designer, nous créons un plugin qui remplace le ContactModel dans Qt Quick Designer. Pour que cela fonctionne, nous ajoutons la ligne suivante à contactlist.pro.

QML_DESIGNER_IMPORT_PATH = $$PWD/designer

Étant donné que Qt Quick Designer ne peut pas instancier la classe C++ ContactModel, nous définissons une maquette à l'aide de ListModel. Cela garantit que ListView utilisant le modèle affiche quelque chose dans Qt Quick Designer.

Exécution de l'exemple

Pour exécuter l'exemple à partir de Qt CreatorOuvrez le mode Welcome et sélectionnez l'exemple à partir de Examples. Pour plus d'informations, voir Qt Creator: Tutoriel : Construire et exécuter.

Exemple de projet @ code.qt.io

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