IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Viadeo Twitter Facebook Share on Google+   
Logo Documentation Qt ·  Page d'accueil  ·  Toutes les classes  ·  Toutes les fonctions  ·  Vues d'ensemble  · 

QStatusBar

La classe QStatusBar fournit une barre horizontale adaptée à la présentation d?informations d?état. Plus d'informations...

  
 #include <QStatusBar>

Héritage

Hérite de QWidget.

Description détaillée

La classe QStatusBar fournit une barre horizontale adaptée à la présentation d?informations d?état.

Chaque indicateur d?état rentre dans une de ces trois catégories :

  • temporaire - occupe brièvement la plus grande partie de la barre d?état. Utilisé par exemple pour expliquer les textes des infobulles ou les entrées de menu ;
  • normal - occupe une petite partie de la barre d?état et peut être caché par les messages temporaires. Utilisé par exemple pour afficher la page et le numéro de ligne dans un traitement de texte ;
  • permanent - n?est jamais caché. Utilisé pour les indications importantes sur le mode de fonctionnement, certaines applications présentent par exemple un indicateur Caps Lock (verrou majuscules) dans la barre d?état.

QStatusBar permet l?affichage de ces trois types d?indicateur.

Typiquement, les fonctionnalités de la barre d?état sont utilisées en relation avec un objet QMainWindow. La classe QMainWindow fournit une fenêtre principale, avec une barre de menus, des barres d?outils, des widgets dock et une barre d?état autour d?un widget central. On peut accéder à la barre d?état en utilisant la fonction QMainWindow::statusBar(), et on peut la remplacer avec QMainWindow::setStatusBar().

Voici comment utiliser le slot showMessage() pour afficher un message temporaire :

 void MainWindow::createStatusBar()
 {
     statusBar()->showMessage(tr("Ready"));
 }

Pour enlever un message temporaire, on utilise le slot clearMessage(), ou alors on définit une limite de temps lors de l?appel à showMessage(). Par exemple :

 void MainWindow::print()
 {
 #ifndef QT_NO_PRINTDIALOG
     QTextDocument *document = textEdit->document();
     QPrinter printer;
 
     QPrintDialog *dlg = new QPrintDialog(&printer, this);
     if (dlg->exec() != QDialog::Accepted)
         return;
 
     document->print(&printer);
 
     statusBar()->showMessage(tr("Ready"), 2000);
 #endif
 }

On utilise la fonction currentMessage() pour récupérer le message temporaire actuellement affiché. La classe QStatusBar fournit également le signal messageChanged(), émis chaque fois que le message temporaire change.

Les messages normaux et permanents sont affichés en créant un petit widget (QLabel, QProgressBar ou encore QToolButton) et en l?ajoutant à la barre d?état en utilisant les fonctions addWidget() ou addPermanentWidget(). On utilise la fonction removeWidget() pour effacer ces messages de la barre d?état.

 statusBar()->addWidget(new MyReadWriteIndication);

Par défaut, QStatusBar fournit une poignée de dimensionnement QSizeGrip dans le coin en bas à droite. On peut la désactiver en utilisant la fonction setSizeGripEnabled(). Pour connaître l'état courant de la poignée de dimensionnement, on utilise la fonction isSizeGripEnabled().

image

Voir aussi QMainWindow, QStatusTipEvent, Manuel de conception d?IHM : la barre d?état et Exemple d?application.

Propriétés

sizeGripEnabled : bool

Cette propriété indique si la poignée de dimensionnement QSizeGrip en bas à droite de la barre d'état est activée.

La poignée de dimensionnement est activée par défaut.

Fonction d'accès

bool isSizeGripEnabled () const

void setSizeGripEnabled ( bool )

Fonctions membres

QStatusBar::QStatusBar ( QWidget * parent = 0 )

Construit une barre d'état avec une poignée de dimensionnement et le parent donné.

Voir aussi setSizeGripEnabled().

QStatusBar::~QStatusBar () [virtual]

Détruit la barre d'état et libère les ressources allouées et les widgets enfants.

void QStatusBar::addPermanentWidget ( QWidget * widget, int stretch = 0 )

Ajoute le widget donné à la barre d'état, de façon permanente. Si ce n'est pas déjà le cas, l'objet QStatusBar devient le parent du widget. Le paramètre d'étirement stretch est utilisé pour adapter la taille du widget donné lorsque la barre d'état grandit ou rétrécit. Le facteur d'étirement par défaut est 0, c'est-à-dire que le widget occupe le minimum de place.

« De façon permanente » signifie que le widget ne peut pas être caché par des messages temporaires. Il est positionné à l'extrémité droite de la barre d'état.

Voir aussi insertPermanentWidget(), removeWidget() et addWidget().

void QStatusBar::addWidget ( QWidget * widget, int stretch = 0 )

Ajoute le widget donné à la barre d'état. Si ce n'est pas déjà le cas, l'objet QStatusBar devient le parent du widget. Le paramètre d'étirement stretch est utilisé pour adapter la taille du widget donné lorsque la barre d'état grandit ou rétrécit. Le facteur d'étirement par défaut est 0, c'est-à-dire que le widget occupe le minimum de place.

Le widget est positionné à l'extrémité gauche du premier widget permanent (voir addPermanentWidget()) et peut être caché par des messages temporaires.

Voir aussi insertWidget(), removeWidget() et addPermanentWidget().

void QStatusBar::clearMessage () [slot]

Efface tous les messages temporaires actuellement affichés.

Voir aussi currentMessage(), showMessage() et removeWidget().

QString QStatusBar::currentMessage () const

Retourne le message temporaire actuellement affiché ou une chaîne de caractères vide s'il n'y a pas de message.

Voir aussi showMessage().

bool QStatusBar::event ( QEvent * e ) [virtual protected]

Réimplémentation de QObject::event().

void QStatusBar::hideOrShow () [protected]

Assure la visibilité correcte des widgets.

Utilisé par les fonctions showMessage() etclearMessage().

int QStatusBar::insertPermanentWidget ( int index, QWidget * widget, int stretch = 0 )

Insère le widget donné à l?index donné de cette barre d?état, de façon permanente. Si ce n?est pas déjà le cas, l?objet QStatusBar devient le parent du widget. Si l?index est en dehors de l?intervalle, le widget est ajouté à la fin (dans ce cas l?index réel du widget est retourné).

Le paramètre d?étirement stretch est utilisé pour adapter la taille du widget donné lorsque la barre d?état grandit ou rétrécit. Le facteur d?étirement par défaut est 0, c?est-à-dire que le widget occupe le minimum de place.

De façon permanente signifie que le widget ne peut pas être caché par des messages temporaires. Il est positionné à l'extrémité droite de la barre d?état.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi addPermanentWidget(), removeWidget() et addWidget().

int QStatusBar::insertWidget ( int index, QWidget * widget, int stretch = 0 )

int QStatusBar::insertPermanentWidget ( int index, QWidget * widget, int stretch = 0 )

Insère le widget donné à l?index donné de cette barre d?état. Si ce n?est pas déjà le cas, l?objet QStatusBar devient le parent du widget. Si l?index est en dehors de l?intervalle, le widget est ajouté à la fin (dans ce cas l?index réel du widget est retourné).

Le paramètre d?étirement stretch est utilisé pour adapter la taille du widget donné lorsque la barre d?état grandit ou rétrécit. Le facteur d?étirement par défaut est 0, c?est-à-dire que le widget occupe le minimum de place.

Le widget est positionné à l'extrémité gauche du premier widget permanent (voir addPermanentWidget()), et peut être caché par des messages temporaires.

Cette fonction a été introduite dans Qt 4.2.

Voir aussi addPermanentWidget(), removeWidget() et addWidget().

void QStatusBar::messageChanged ( const QString & message ) [signal]

Ce signal est émis à chaque fois que le message temporaire change. Le nouveau message temporaire est contenu dans le paramètre message qui est une chaîne nulle lorsque le message a été effacé.

Voir aussi showMessage() and clearMessage().

void QStatusBar::paintEvent ( QPaintEvent * event ) [virtual protected]

Réimplémentation de QWidget::paintEvent().

Affiche le message temporaire, le cas échéant, en réponse à l'événement de peinture event.

void QStatusBar::reformat () [protected]

Change l'apparence de la barre d'état pour prendre en compte les changements de ses éléments.

Certaines sous-classes spécifiques peuvent avoir besoin de cette fonction, mais de manière générale le gestionnaire de géométrie prend en charge tous les remaniements nécessaires.

void QStatusBar::removeWidget ( QWidget * widget )

Enlève le widget spécifié de la barre d'état.

À noter : cette fonction ne supprime pas le widget mais le cache. Pour ajouter de nouveau le widget, il faut appeler les deux fonctions addWidget() et show().

Voir aussi addWidget(), addPermanentWidget() et clearMessage().

void QStatusBar::resizeEvent ( QResizeEvent * e ) [virtual protected]

Réimplémentation de QWidget::resizeEvent().

void QStatusBar::showEvent ( QShowEvent * ) [virtual protected]

Réimplémentation de QWidget::showEvent().

void QStatusBar::showMessage ( const QString & message, int timeout = 0 ) [slot]

Cache les indicateurs d'état normaux et affiche le message donné, pendant la durée spécifiée en millisecondes (timeout). Si timeout est à 0 (valeur par défaut), le message reste affiché jusqu?à ce que le slot clearMessage() soit appelé, ou jusqu?à ce que le slot showMessage() soit appelé à nouveau pour modifier le message.

À noter que showMessage() est appelé pour afficher des explications temporaires sur les textes des infobulles, et que par conséquent passer un timeout à 0 n?est pas suffisant pour afficher un message permanent.

Voir aussi messageChanged(), currentMessage() et clearMessage().

Remerciements

Merci à Lo?c Leguay pour la traduction, ainsi qu'à Ilya Diallo et Claude Leloup pour la relecture !

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 © 2024 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 !