barre de menus (pour Qt Quick, la propriété menuBar), la barre d'outils (toolBar), la
barre d'état (statusBar) et la zone de travail. Bien évidemment, toutes ces parties sont
optionnelles : toutes les applications n'ont pas forcément besoin d'une barre d'outils ou
d'état, comme BiblioApp, l'exemple de cet ouvrage.
La première barre, celle des menus, se définit à l'aide d'une instance de MenuBar. Elle
prend en argument une série de Menu, qui sont disposés le long de la barre des menus
dans leur ordre de définition. Chaque menu dispose d'un titre (title), puis d'une suite
d'éléments : des MenuItem, mais aussi des MenuSeparator pour séparer deux blocs
d'éléments par une ligne.
Les deux autres barres, d'outils avec ToolBar et d'état avec StatusBar, sont très
similaires : à l'usage, la différence principale est le nom du composant utilisé. À la
différence de la barre de menus, elles ne disposent pas leurs éléments elles-mêmes : si
on leur donne une suite d'éléments à afficher, ils se superposeront, les uns par-dessus
les autres — ce qui n'est guère fonctionnel. Il faut recourir à un composant positionneur
pour les afficher comme souhaité, principalement RowLayout pour les aligner à
l'horizontale. Ce mécanisme offre une certaine flexibilité : pour créer plusieurs barres
d'outils, il suffit d'utiliser un positionneur vertical comme ColumnLayout.
Note > Pour Qt Quick, le contenu des barres d'outils et d'état est totalement libre :
ToolButton a une apparence prévue pour les barres d'outils, mais rien n'empêche
d'utiliser un autre composant à la place. De même, la barre d'état ne contient pas
forcément du texte.
Note > Les Qt Quick Controls 2 disposent, dès leur version 2.1 (PyQt 5.8), du
composant ToolSeparator, qui correspond à la barre verticale qui sépare deux
boutons dans les barres d'outils. Pour les autres versions, vous pouvez l'implémenter
vous-même.
Au contraire, pour les menus, vous pouvez d'ores et déjà utiliser MenuSeparator.
1.2. Interactivité dans les menus et barres
d'outils
Jusqu'à présent, l'interface était statique. Cependant, il est très facile d'ajouter de
l'interactivité aux éléments introduits, tout en respectant les mécanismes standards
définis pour chaque plateforme.
308
Précédent

- 309/494

Suivant