Developpez.com - Qt
X

Choisissez d'abord la catégorieensuite la rubrique :

Viadeo Twitter Google Bookmarks ! Facebook Digg del.icio.us MySpace Yahoo MyWeb Blinklist Netvouz Reddit Simpy StumbleUpon Bookmarks Windows Live Favorites 
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

QGraphicsItemGroup

La classe QGraphicsItemGroup fournit un conteneur traitant un groupe d'éléments comme un élément unique. Plus d'informations...

#include <QGraphicsItemGroup>

Voir la position dans l'arbre des classes.

Héritage

Hérite de QGraphicsItem.

Cette classe a été introduite dans Qt 4.2.

Description détaillée

La classe QGraphicsItemGroup fournit un conteneur traitant un groupe d'éléments comme un élément unique.

Un QGraphicsItemGroup est un type particulier d'élément composé qui traite ses enfants et lui-même comme un élément unique (c'est-à-dire que les événements et les géométries de tous les enfants sont fusionnés). Il est courant d'utiliser des groupes d'éléments dans les outils de présentation, lorsque l'utilisateur veut grouper plusieurs petits éléments en un élément plus gros pour simplifier les déplacements et les copies d'éléments.

Si vous voulez simplement intégrer des éléments dans d'autres éléments, vous pouvez utiliser directement un QGraphicsItem en passant le parent approprié à setParentItem().

La fonction boundingRect() de QGraphicsItemGroup renvoie le rectangle frontière pour l'ensemble des éléments du groupe. QGraphicsItemGroup ignore le drapeau ItemIgnoresTransformations de ses enfants (c'est-à-dire que, pour ce qui concerne la géométrie du groupe, les enfants sont considérés transformables).

Le groupe peut être construit de deux façons. La plus simple et la plus courante est de passer une liste d'éléments (par exemple, tous les éléments sélectionnés) à QGraphicsScene::createItemGroup(), qui renvoie un nouvel élément QGraphicsItemGroup. L'autre possibilité est de construire manuellement un élément QGraphicsItemGroup, l'ajouter à la scène en appelant QGraphicsScene::addItem() et d'ajouter des éléments au groupe manuellement, un par un, en appelant addToGroup(). Pour défaire (« dégrouper ») un groupe d'éléments, vous pouvez soit appeler QGraphicsScene::destroyItemGroup(), soit retirer manuellement tous les éléments du groupe en appelant removeFromGroup().

 // Grouper les éléments sélectionnés
 QGraphicsItemGroup *group = scene->createItemGroup(scene->selecteditems());
 
 // Dégroupage et destruction de l'élément groupe 
 scene->destroyItemGroup(group);

L'opération d'ajout et de retrait d'éléments préserve les positions et transformations relatives à la scène des éléments, contrairement à setParentItem(), qui conserve uniquement les transformations et les positions relatives au parent de l'élément enfant.

La fonction addtoGroup() donne ce groupe comme parent à l'élément ajouté, mais la position et la transformation de l'élément relatives à la scène resteront inchangées. Visuellement, cela signifie que les éléments ajoutés via addToGroup() resteront inchangés suite à cette opération, quelles que soient les positions et les transformations des éléments ou du groupe ; par contre, la position et la matrice de l'élément peuvent changer.

La fonction removeFromGroup() a une sémantique similaire à setParentItem() ; l'élément prendra comme parent le parent de ce groupe. Comme pour addToGroup(), la position et la transformation de l'élément relatives à la scène restent inchangées.

Voir aussi QGraphicsItem et le framework de la Vue Graphique.

Fonctions membres

QGraphicsItemGroup::QGraphicsItemGroup ( QGraphicsItem * parent = 0 )

Construit un QGraphicsItemGroup. parent est passé au constructeur de QGraphicsItem.

Voir aussi QGraphicsScene::addItem().

QGraphicsItemGroup::~QGraphicsItemGroup ()

Détruit le QGraphicsItemGroup.

void QGraphicsItemGroup::addToGroup ( QGraphicsItem * item )

Ajoute l'élément donné à ce groupe. Le groupe devient le parent de l'élément ajouté, mais la position et la transformation de l'élément relatives à la scène resteront inchangées.

Voir aussi removeFromGroup() et QGraphicsScene::createItemGroup().

QRectF QGraphicsItemGroup::boundingRect () const [virtual]

Réimplémentation de QGraphicsItem::boundingRect().

Renvoie le rectangle frontière de ce groupe et de ses enfants.

bool QGraphicsItemGroup::isObscuredBy ( const QGraphicsItem * item ) const [virtual]

Réimplémentation de QGraphicsItem::isObscuredBy().

QPainterPath QGraphicsItemGroup::opaqueArea () const [virtual]

Réimplémentation de QGraphicsItem::opaqueArea().

void QGraphicsItemGroup::paint ( QPainter * painter, const QStyleOptionGraphicsItem * option, QWidget * widget = 0 ) [virtual]

Réimplémentation de QGraphicsItem::paint().

void QGraphicsItemGroup::removeFromGroup ( QGraphicsItem * item )

Retire l'élément spécifié de ce groupe. L'élément prendra comme parent le parent de ce groupe ou 0 si ce groupe n'a pas de parent. Sa position et sa transformation relatives à la scène resteront inchangées.

Voir aussi addToGroup() et QGraphicsScene::destroyItemGroup().

int QGraphicsItemGroup::type () const [virtual]

Réimplémentation de QGraphicsItem::type().

Remerciements

Merci à Ilya Diallo pour la traduction et à Dimitry Ernot ainsi qu'à Jacques Thery pour leur relecture !

Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 88
  2. Apercevoir la troisième dimension ou l'utilisation multithreadée d'OpenGL dans Qt, un article des Qt Quarterly traduit par Guillaume Belz 0
  3. Les développeurs ignorent-ils trop les failles découvertes dans leur code ? Prenez-vous en compte les remarques des autres ? 17
  4. Pourquoi les programmeurs sont-ils moins payés que les gestionnaires de programmes ? Manquent-ils de pouvoir de négociation ? 39
  5. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  6. Adieu qmake, bienvenue qbs : Qt Building Suite, un outil déclaratif et extensible pour la compilation de projets Qt 17
  7. 2017 : un quinquennat pour une nouvelle version du C++ ? Possible, selon Herb Sutter 6
Page suivante

Le Qt Quarterly au hasard

Logo

Poppler : afficher des fichiers PDF avec Qt

Qt Quarterly est la revue trimestrielle proposée par Nokia et à destination des développeurs Qt. Ces articles d'une grande qualité technique sont rédigés par des experts Qt. Lire l'article.

Communauté

Ressources

Liens utiles

Contact

  • Vous souhaitez rejoindre la rédaction ou proposer un tutoriel, une traduction, une question... ? Postez dans le forum Contribuez ou contactez-nous par MP ou par email (voir en bas de page).

Qt dans le magazine

Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. Qt 4.7
Copyright © 2012 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD.
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP !
 
 
 
 
Partenaires

Hébergement Web

Responsable bénévole de la rubrique Qt : Thibaut Cuvelier -