« Programmation Qt/La fenêtre principale » : différence entre les versions
Contenu supprimé Contenu ajouté
m Passage du sommaire en <noinclude> Balise : Éditeur de wikicode 2017 |
+ Résumé |
||
Ligne 81 :
setCentralWidget(zoneMDI);
</syntaxhighlight>Effectivement, nous utilisons le principe du SDI car on remarque <code>setCentralWidget()</code>. Pour notre MDI, la fenêtre n'a pas ses “propres” outils pour en créer, mais on utilise la classe <code>QMdiArea</code> qui contiendra des <code>QMdiSubWindow</code>, qu'on ajoute avec la méthode <code>addSubWindow()</code> d'une <code>QMdiArea</code>. Ces <code>QMdiSubWindow</code> contiendront les widgets de la sous-fenêtre.
=== La barre d'état ===
Aussi appelée barre de statut, la barre d'état est un “bandeau” en bas de la fenêtre qui indique l'état de la fenêtre. Regardez l'exemple ci-dessous :<syntaxhighlight lang="c++" line="1" start="1">
Ligne 90 ⟶ 87 :
progressBar->setValue(75);
statusBar()->addWidget(progressBar, 16);
</syntaxhighlight>Ici, nous supposons que nous sommes dans une classe de type <code>QMainWindow</code>, qui intègre directement la classe qui permet de créer une barre d'état : <code>QStatusBar</code>. Nous utilisons le plus souvent ces méthodes : <code>showMessage()</code> et <code>addWidget()</code>. La première méthode permet d'afficher un message, avec deux choix : soit nous indiquons directement le message, qui s'affichera alors jusqu'à ce que l'utilisateur passe dessus avec la souris ou qu'un autre message s'affiche, soit nous indiquons et le message et le temps qu'il doit rester, en millisecondes (vous prenez le nombre de secondes et vous multipliez par 1000). La deuxième méthode permet d'insérer un widget dans la barre d'état, ici une barre de progression, mais cela peut être un bouton, un champ, etc
Vous êtes maintenant prêt à réaliser un TP qui utilise plus que jamais les éléments de la fenêtre principale. Eh oui, c'est un éditeur de texte que vous allez réaliser dans [[Programmation Qt/TP : un éditeur de texte|le prochain chapitre →]].
{{Résumé|La fenêtre principale est gérée par la classe <code>QMainWindow</code>.|On peut créer des menus, des barres d'outils, des docks et une barre d'état. On peut aussi gérer l'espace principal avec un SDI ou un MDI.|Les menus sont créés avec les classes <code>QMenu</code> et <code>QAction</code>. Pour ajouter créer un menu, on utilise <code>menuBar()->addMenu("Nom du menu', this)</code> On ajoute une action avec la méthode <code>addAction()</code>.|La barre d'outils réutilise les actions des menus sous forme d'icône. On les crée avec la méthode <code>addToolBar("Nom de la barre d'outils")</code>. De même, on y ajoute une action avec <code>addAction()</code>.|Les docks sont des gros conteneurs latéraux. La classe <code>QDockWidget</code> permet de les créer, puis on les ajoute avec <code>addDockWidget(Qt::Left/RightDockWidgetArea, monDock)</code>.|Enfin, la barre d'état s'utilise avec l'objet <code>statusBar()</code>, un objet <code>QStatusBar</code> automatiquement créé par la classe <code>QMainWindow</code>. On y affiche un message avec la méthode <code>showMessage("Message", nbMillisecondes)</code> et un widget avec <code>addWidget()</code>.}}
{{AutoCat}}
|