Sur cette page

QtShellChrome QML Type

Fournit les fonctionnalités par défaut d'un gestionnaire de fenêtres à utiliser avec l'extension « qt-shell ». En savoir plus...

Import Statement: import QtWayland.Compositor.QtShell
Since: Qt 6.3

Propriétés

Méthodes

Description détaillée

QtShellChrome est un type utilitaire permettant d'apporter des fonctionnalités de gestion de fenêtres à l'interaction avec les clients via le protocole d'extension de shell qt-shell.

À partir d’une extension ShellSurfaceItem associée à un QtShellSurface, l’élément adaptera automatiquement sa taille pour s’ajuster à la surface. Il gérera également automatiquement :

  • Les états de fenêtre, tels que maximisé, minimisé et plein écran.
  • L’activation de la fenêtre.
  • Le redimensionnement de la fenêtre à l’aide des poignées de redimensionnement (si les propriétés appropriées sont définies).
  • Le repositionnement de la fenêtre via l’interaction avec la barre de titre (si la propriété ` titleBar ` est définie).

QtShellChrome est destiné à être utilisé conjointement avec QtShell et QtShellSurface.

Voir également QtShell Compositor.

Documentation des propriétés

bottomLeftResizeHandle : Item

Cette propriété contient la poignée de redimensionnement par défaut située en bas à gauche de l'QtShellChrome. Si elle est définie, un événement « DragHandler » sera déclenché sur la poignée de redimensionnement, ce qui redimensionnera la fenêtre en déplaçant ses bords inférieur et gauche d'une distance égale.

La poignée s'affiche et se masque automatiquement, en fonction des indicateurs de la fenêtre et de son état en plein écran.

QtShellChrome {
   Rectangle {
       id: blrh
       anchors.bottom: parent.bottom
       anchors.left: parent.left
       height: 5
       width: 5
       color: "white"
   }
   bottomLeftResizeHandle: blrh
}

bottomResizeHandle : Item

Cette propriété contient la poignée de redimensionnement inférieure par défaut de l'QtShellChrome. Si elle est définie, un événement « DragHandler » sera déclenché sur la poignée de redimensionnement, ce qui permettra de redimensionner la fenêtre en déplaçant son bord inférieur.

La poignée s'affiche et se masque automatiquement, en fonction des indicateurs de la fenêtre et de son état plein écran.

QtShellChrome {
   Rectangle {
       id: brh
       anchors.bottom: parent.bottom
       anchors.left: parent.left
       anchors.right: parent.right
       height: 5
       color: "white"
   }
   bottomResizeHandle: brh
}

Remarque : à moins que des marges de cadre explicites ne soient définies, la hauteur de la poignée sera incluse dans la marge inférieure du cadre de la fenêtre.

bottomRightResizeHandle : Item

Cette propriété contient la poignée de redimensionnement par défaut située en bas à droite de l'QtShellChrome. Si elle est définie, un événement « DragHandler » sera déclenché sur la poignée de redimensionnement, ce qui redimensionnera la fenêtre en déplaçant ses bords inférieur et droit de manière égale.

La poignée s'affiche et se masque automatiquement en fonction des indicateurs de la fenêtre et de son état en plein écran.

QtShellChrome {
   Rectangle {
       id: brrh
       anchors.bottom: parent.bottom
       anchors.right: parent.right
       height: 5
       width: 5
       color: "white"
   }
   bottomRightResizeHandle: brrh
}

frameMarginBottom : int

Définit la taille de la marge inférieure de l'QtShellChrome, réservée aux éléments décoratifs de la fenêtre. Par défaut, cette valeur correspond à la hauteur de l'bottomResizeHandle si celle-ci est définie. Sinon, elle est égale à 0.

Remarque : en définissant explicitement cette propriété, toutes les marges par défaut du cadre seront remplacées par les propriétés correspondantes.

frameMarginLeft : int

Définit la taille de la marge gauche de l'QtShellChrome, réservée aux éléments décoratifs de la fenêtre. Par défaut, cette valeur correspond à la largeur de l'leftResizeHandle si celle-ci est définie. Sinon, elle est égale à 0.

Remarque : en définissant explicitement cette propriété, toutes les marges par défaut du cadre seront remplacées par les propriétés correspondantes.

frameMarginRight : int

Définit la taille de la marge droite de l'QtShellChrome, réservée aux décorations de la fenêtre. Par défaut, cette valeur correspond à la largeur de l'rightResizeHandle si celle-ci est définie. Sinon, elle est égale à 0.

Remarque : en définissant explicitement cette propriété, toutes les marges par défaut du cadre seront remplacées par les propriétés correspondantes.

frameMarginTop : int

Définit la taille de la marge supérieure de l'QtShellChrome, réservée aux éléments de décoration de la fenêtre. Par défaut, cette valeur correspond à la somme des hauteurs des propriétés ` leftResizeHandle ` et ` titleBar`, si celles-ci sont définies. Sinon, elle est égale à 0.

Remarque : en définissant explicitement cette propriété, toutes les marges par défaut du cadre seront remplacées par les propriétés correspondantes.

hasDecorations : bool [read-only]

Cette propriété est vraie si les décorations de l'QtShellChrome e doivent être visibles, en fonction de l'état et des indicateurs de la fenêtre.

leftResizeHandle : Item

Cette propriété contient la poignée de redimensionnement gauche par défaut de l'QtShellChrome. Si elle est définie, un événement « DragHandler » sera déclenché sur la poignée de redimensionnement, ce qui permettra de redimensionner la fenêtre en déplaçant son bord gauche.

La poignée s'affiche et se masque automatiquement, en fonction des indicateurs de la fenêtre et de son état en plein écran.

QtShellChrome {
   Rectangle {
       id: lrh
       anchors.left: parent.left
       anchors.top: parent.top
       anchors.bottom: parent.bottom
       width: 5
       color: "white"
   }
   leftResizeHandle: lrh
}

Remarque : à moins que des marges de cadre explicites ne soient définies, la largeur de la poignée sera incluse dans la marge de cadre gauche de la fenêtre.

maximizedRect : rect

Cette propriété définit la zone de l'WaylandOutput, qui peut être occupée par la fenêtre lorsqu'elle est agrandie. Par défaut, la fenêtre occupe toute la géométrie de l'WaylandOutput lorsqu'elle est agrandie. Il peut être utile de modifier cette valeur, par exemple lorsque le compositeur affiche d'autres éléments de l'interface utilisateur du système qui ne doivent pas être masqués par les applications agrandies, comme la barre des tâches.

rightResizeHandle : Item

Cette propriété contient la poignée de redimensionnement par défaut située à droite de l'QtShellChrome. Si elle est définie, un événement « DragHandler » sera déclenché sur la poignée de redimensionnement, ce qui permettra de redimensionner la fenêtre en déplaçant son bord droit.

La poignée s'affiche et se masque automatiquement, en fonction des indicateurs de la fenêtre et de son état en plein écran.

QtShellChrome {
   Rectangle {
       id: rrh
       anchors.right: parent.right
       anchors.top: parent.top
       anchors.bottom: parent.bottom
       width: 5
       color: "white"
   }
   rightResizeHandle: rrh
}

Remarque : à moins que des marges de cadre explicites ne soient définies, la largeur de la poignée sera incluse dans la marge de droite du cadre de la fenêtre.

shellSurfaceItem : ShellSurfaceItem

Cette propriété contient l'élément de surface de shell associé à cette QtShellChrome. Elle gérera à son tour l'shellSurface de cet élément. L'shellSurface de l'élément doit être de type QtShellSurface.

QtShellChrome {
   id: chrome
   ShellSurfaceItem {
       id: sfi
       anchors.fill: parent
       moveItem: chrome
   }
   shellSurfaceItem: sfi
}

titleBar : Item

Cette propriété définit l'élément par défaut de la barre de titre de l'QtShellChrome. Si elle est définie, un « DragHandler » sera installé sur la barre de titre, ce qui permettra de déplacer la fenêtre lorsque l'utilisateur interagit avec celle-ci. De plus, la fenêtre sera automatiquement activée si l'on clique sur la barre de titre.

La barre de titre s'affiche et se masque automatiquement, en fonction des indicateurs de la fenêtre et de son état en plein écran.

QtShellChrome {
   Rectangle {
       id: tb
       anchors.top: parent.top
       anchors.right: parent.right
       anchors.left: parent.left
       height: 50
       color: "black"

       Text {
           color: "white"
           anchors.centerIn: parent
           text: shellSurfaceItem.shellSurface.windowTitle
           font.pixelSize: 25
       }
   }
   titleBar: tb
}

Remarque : à moins que des marges de cadre explicites ne soient définies, la hauteur de la barre de titre sera incluse dans la marge supérieure du cadre de la fenêtre.

topLeftResizeHandle : Item

Cette propriété contient la poignée de redimensionnement par défaut située en haut à gauche de l'QtShellChrome. Si elle est définie, un événement « DragHandler » sera déclenché sur la poignée de redimensionnement, ce qui redimensionnera la fenêtre en déplaçant ses bords supérieur et gauche de manière égale.

La poignée s'affiche et se masque automatiquement, en fonction des indicateurs de la fenêtre et de son état en plein écran.

QtShellChrome {
   Rectangle {
       id: tlrh
       anchors.top: parent.top
       anchors.left: parent.left
       height: 5
       width: 5
       color: "white"
   }
   topLeftResizeHandle: tlrh
}

topResizeHandle : Item

Cette propriété contient la poignée de redimensionnement supérieure par défaut de l'QtShellChrome. Si elle est définie, une méthode ` DragHandler ` sera implémentée sur la poignée de redimensionnement, ce qui permettra de redimensionner la fenêtre en déplaçant son bord supérieur.

La poignée s'affiche et se masque automatiquement, en fonction des indicateurs de la fenêtre et de son état en plein écran.

QtShellChrome {
   Rectangle {
       id: trh
       anchors.top: parent.top
       anchors.left: parent.left
       anchors.right: parent.right
       height: 5
       color: "white"
   }
   topResizeHandle: trh
}

Remarque : à moins que des marges de cadre explicites ne soient définies, la hauteur de la poignée sera incluse dans la marge supérieure du cadre de la fenêtre.

topRightResizeHandle : Item

Cette propriété contient la poignée de redimensionnement par défaut située en haut à droite de l'QtShellChrome. Si elle est définie, un ` DragHandler ` sera installé sur la poignée de redimensionnement, ce qui permettra de redimensionner la fenêtre en déplaçant ses bords supérieur et droit de manière égale.

La poignée s'affiche et se masque automatiquement, en fonction des indicateurs de la fenêtre et de son état en plein écran.

QtShellChrome {
   Rectangle {
       id: trrh
       anchors.top: parent.top
       anchors.right: parent.right
       height: 5
       width: 5
       color: "white"
   }
   topRightResizeHandle: trrh
}

windowFlags : int [read-only]

Cette propriété contient les indicateurs de fenêtre de l'objet ` QtShellChrome`. Ils correspondent à la propriété ` windowFlags ` de l'objet ` QtShellSurface` associé, sauf lorsque celle-ci est égale à `Qt.Window`. Dans ce cas, un ensemble d'indicateurs de fenêtre par défaut sera utilisé à la place. Les indicateurs de fenêtre par défaut sont Qt.Window, Qt.WindowMaximizeButtonHint, Qt.WindowMinimizeButtonHint et Qt.WindowCloseButtonHint.

windowState : int [read-only]

Cette propriété contient l'état de la fenêtre de la surface du shell. Elle est mise à jour immédiatement lorsque l'état de la fenêtre est demandé côté compositeur, avant même que le client n'ait accusé réception de la requête. Par conséquent, elle peut, pendant de brefs instants, différer de la propriété « windowState » de la surface du shell, qui sera mise à jour une fois que le client aura accusé réception de la requête.

Documentation des méthodes

void activate()

Activez manuellement cette fenêtre. Cela permettra également de la mettre au premier plan.

Voir également raise().

void deactivate()

Désactive manuellement cette fenêtre. Si la fenêtre était active, cette opération activera à la place la fenêtre suivante dans la pile.

void lower()

Abaissez cette fenêtre afin qu'elle se superpose aux autres fenêtres (sauf si les indicateurs de fenêtre de ces dernières l'interdisent).

void raise()

Affichez cette fenêtre de manière à ce qu'elle s'affiche par-dessus les autres fenêtres (sauf si les paramètres des autres fenêtres l'interdisent).

void toggleFullScreen()

Permet de basculer entre le mode plein écran et le mode fenêtre normale. Cette méthode réinitialise également les états de fenêtre réduite ou agrandie s'ils sont activés.

void toggleMaximized()

Permet de basculer entre les états « maximisé » et « normal ». Cette méthode efface également l'état « minimisé » de la fenêtre s'il est défini.

void toggleMinimized()

Permet de basculer entre les états « minimisé » et « normal ». Cette méthode réinitialise également l'état de la fenêtre maximisée s'il est activé.

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