Utiliser QT Designer : Les formulaires

Tout programme dans les systèmes d'exploitation actuels utilise des fenêtre comportant des éléments graphiques (ou widgets). Ces widgets peuvent être des boutons, un menu, un bargraph, etc....

Pour placer et positionner ces widgets, QT Creator dispose d'un outil de placement qui est QT Designer.

Les fenêtre créées de cette manière sont appelées les formulaires (Forms en anglais)

Remarque : Avant d'utiliser QT Designer, il faut créer un projet et y placer le code minimal

Que fait QT Designer

QT Designer facilite le placement des Widgets en créant une nouvelle classe qui porte le nom spécifié.

Cette classe est associée à 4 fichiers :

Créer une fenêtre

QT Designer

QT Designer se présente de la manière suivante :

Remarque : on constatte que cette fenêtre dispose déjà d'un menu et d'une barre d'état. Cela s'explique par le fait que le modèle MainWindows a été sélectionné.

Modifier la fenêtre

Prenons comme exemple le placement d'une image sur la fenêtre principale.

Une image se place avec le widget QLabel.

Remarque : En sélectionnant la propriété  et en appuyant sur la touche F1, on obtient l'aide contextuelle

La validation affiche l'image sur la fenêtre.

Intégrer les données QT Designer dans le programme

Le programme principal étant créé, il faut spécifier la classe à intégrer :

#include <QApplication>

#include <mainwindow.h> //on précise le header de la classe QMainWinwow

#include <QtWidgets> //eventuellement

int main(int argc, char *argv[])

{

           QApplication app(argc, argv);

mainwindow fenetreprincipale;

fenetreprincipale.show(); //on affiche la fenêtre

    return app.exec();

}


La compilation provoquera l'ouverture de la fenêtre principale


Remarque : si la fenêtre doit s'ouvre sur toute la taille de l'écran, on remplacera fenetreprincipale.show(); par fenetreprincipale.showFullScreen();

Ajouter la barre d'état

Voir comment programmer la barre d'état


Ajouter une barre d'outils

Remarque : Si l'on souhaite garder l'entrée de menu, il faut appuyer sur le bouton CTRL en même temps que de faire un glisser déposer