L’interface graphique (GUI en Anglais) de QGIS est développée grâce à la technologie QT. Pour rappel, QT est un SDK multi-plateforme qui permet la création d’interfaces graphiques riches. QGIS a la particularité de permettre l’utilisation de formulaires externes pour saisir les données attributaires, lors de la digitalisation par exemple. Nous allons voir à travers ce tutoriel comment construire nos propres formulaires grâce à QT-Creator, l’outil de design d’interface du SDK QT.
Commencez par télécharger la dernière version de QT pour Windows à cette adresse (QT est gratuit pour une utilisation non commerciale) :
Une fois le logiciel installé, lancez le et créez un nouveau projet.
Dans la fenêtre qui s’ouvre, choisissez « Interface graphique QT designer »
Laissez les options choisies par défaut dans les deux fenêtres suivantes. Donnez un nom à votre fichier et spécifiez le chemin d’accès où vous voulez l’enregistrer.
L’éditeur QT Creator s’ouvre avec votre formulaire vierge, à part deux boutons positionnés par défaut, « OK » et « Annuler »
Faites glissez le contrôle « Label » sur votre formulaire pour ajouter un texte, ici, le titre du formulaire : « Gestion des arbres »
Vous pouvez changer le style du texte dans la propriété "Font".
Choisissez ensuite le contrôle « LineEdit » et ajoutez le au formulaire, copiez-collez le quatre fois. Nous disposons ainsi de quatre champs texte.
Sélectionnez les champs texte les uns après les autres pour modifier leur nom dans les propriétés. (Le nom des contrôles doit correspondre au nom des champs de la couche pour laquelle nous souhaitons utiliser le formulaire)
Pour ma part, j’ai choisi « id », « type », « age » et « etat ».
Vous pouvez ensuite ajouter des « Label » avec leur nom devant les champs.
Si vous voulez aligner parfaitement vos contrôles, sélectionnez les par groupe et cliquez sur l’icône « Aligner verticalement » sur la barre d’outil au dessus du formulaire.
Pour afficher une image sur le formulaire, nous allons aussi utiliser le contrôle « Label » dont nous modifierons la propriété « pixmap », afin de choisir notre image. Cochez aussi la propriété « scaledContents » pour nous permettre de redimensionner l’image à notre goût.
Notre formulaire est terminé, il ne nous reste plus qu’à l’enregistrer. La suite se passe sous QGIS.
Lancez QGIS et créez une nouvelle couche vecteur de type point. Ajoutez les quatre champs en prenant soin de faire correspondre leur nom avec ceux des contrôles crées sous QT (« id », « type », « age » et « etat »).
Une fois la couche créée, double-cliquez sur celle ci afin d’en afficher les propriétés. Dans l’onglet "Général" , cliquez sur le bouton « ... » de l’option "Editer UI" et sélectionnez votre fichier de formulaire fraichement crée. Validez les modifications des propriétés de votre couche etcliquez sur OK.
Lancez la digitalisation et saisissez un point. Comme par magie notre formulaire apparait ! Saisissez les données et validez.
Les données sont enregistrées dans la table attributaire. Pour vérifier la saisie, clic droit sur la couche, « Ouvrir la table d'attributs ».
Voilà ! J’espère que ce tutoriel vous sera utile. Et rien ne vous empêche de créer des formulaires beaucoup plus riches en y intégrant par exemple des contrôles de type combobox, list, checkbox, etc…
N'hésitez pas à me contacter si vous avez des questions.
Adrien