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  · 

QWhatsThis

La classe QWhatsThis fournit une description simple de tout widget, c'est à dire en répondant à la question : « What's This? » (Qu'est-ce que c'est ?). Plus d'informations...

#include <QWhatsThis>

Voir la position dans l'arbre des classes.

Description détaillée

La classe QWhatsThis fournit une description simple de tout widget, c'est à dire en répondant à la question : « What's This? » (Qu'est-ce que c'est ?).

L'aide « What's This? » fait partie du système d'aide en ligne de l'application, et fournit aux utilisateurs des informations concernant les fonctionnalités et l'utilisation d'un widget particulier. Le texte de l'aide « What's This? » est typiquement plus long et plus détaillé que les infobulles, mais fournit généralement moins d'informations que ceux qui sont procurés par des fenêtres d'aide séparées.

QWhatsThis fournit une fenêtre unique contenant un texte explicatif s'affichant quand l'utilisateur pose la question « What's This? ». La méthode par défaut, permettant aux utilisateurs de poser la question, est de déplacer le focus vers le widget approprié et d'appuyer sur Shift+F1. Le texte d'aide apparaît immédiatement et s'en va dès que l'utilisateur effectue une autre action (notez que, s'il existe un raccourci pour Shift+F1, ce mécanisme ne fonctionnera pas). Quelques boîtes de dialogue fournissent un bouton  »? » sur lequel les utilisateurs peuvent cliquer pour entrer dans le mode « What's This? » ; ils cliquent ensuite sur le widget approprié pour afficher la fenêtre « What's This? ». Il est aussi possible de fournir un menu ou une barre d'outils pour passer au mode « What's This? ».

Pour ajouter le texte « What's This? » à un widget ou une action, appelez tout simplement whatsThisQWidget::setWhatsThis() ou QAction::setWhatsThis().

Le texte peut être soit du texte enrichi, soit du texte simple. Si vous spécifiez une chaîne de caractères formée de texte enrichi, elle sera rendue en utilisant la feuille de style par défaut, ce qui permet d'inclure des images dans le texte affiché. Afin d'être aussi rapide que possible, la feuille de style par défaut utilise une méthode simple pour déterminer si le texte peut être rendu comme un texte simple. Regardez Qt::mightBeRichText() pour plus de détails.

newAct = new QAction(tr("&Nouveau"), this);
newAct->setShortcut(tr("Ctrl+N"));
newAct->setStatusTip(tr("Crée un nouveau fichier"));
newAct->setWhatsThis(tr("Cliquez sur cette option pour créer un nouveau fichier."));

Une alternative pour entrer dans le mode « What's This? » est d'appeler la fonction createAction() et d'ajouter la QAction retournée soit dans un menu, soit dans une barre d'outils. Par l'invocation de cette action d'aide contextuelle (dans l'image ci-dessous, le bouton avec une icône contenant une flèche et un point d'interrogation), l'utilisateur bascule en mode « What's This? ». S'il clique sur un widget, le texte d'aide approprié est affiché. Le mode est quitté quand l'aide est donnée ou quand l'utilisateur appuie sur Echap.

image

Vous pouvez entrer dans le mode « What's This? » avec enterWhatsThisMode(), vérifier le mode avec inWhatsThisMode() et retourner au mode normal avec leaveWhatsThisMode().

Si vous désirez contrôler manuellement le comportement « What's This? » d'un widget, regardez Qt::WA_CustomWhatsThis.

Il est aussi possible d'afficher différents textes d'aide dans différentes zones d'un widget par l'utilisation de l'objet QHelpEvent de type QEvent::WhatsThis. Il intercepte l'évènement d'aide dans la fonction QWidget::event() de votre widget et appelle QWhatsThis::showText() avec le texte que vous voulez afficher à la position spécifiée dans QHelpEvent::pos(). Si le texte est enrichi et que l'utilisateur clique sur un lien, le widget reçoit également un QWhatsThisClickedEvent avec la référence du lien en tant que QWhatsThisClickedEvent::href(). Si un QWhatsThisClickedEvent est traité (c'est-à-dire que QWidget::event() retourne true), la fenêtre d'aide reste visible. Appelez QWhatsThis::hideText() pour la cacher explicitement.

Voir aussi QToolTip.

Fonctions membres

QAction * QWhatsThis::createAction ( QObject * parent = 0 ) [static]

Renvoie une QAction toute faite, utilisée pour invoquer une aide contextuelle « What's This? », avec le parent donné.

La QAction retournée fournit un moyen pratique de permettre aux utilisateurs d'entrer dans le mode « What's This? ».

void QWhatsThis::enterWhatsThisMode () [static]

Cette fonction fait basculer l'interface utilisateur dans le mode « What's This? ». L'interface utilisateur peut revenir au mode normal par action de l'utilisateur (par exemple quand il clique ou quand il appuie sur Echap), ou par programmation en appelant leaveWhatsThisMode().

Lors de l'entrée dans le mode « What's This? », un QEvent de type Qt::EnterWhatsThisMode est envoyé à tous les widgets de haut niveau.

Voir aussi inWhatsThisMode() et leaveWhatsThisMode().

void QWhatsThis::hideText () [static]

Si une fenêtre « What's This? » est affichée, elle est détruite.

Voir aussi showText().

bool QWhatsThis::inWhatsThisMode () [static]

Retourne true si l'interface utilisateur est en mode « What's This? », sinon retourne false.

Voir aussi enterWhatsThisMode().

void QWhatsThis::leaveWhatsThisMode () [static]

Si l'interface utilisateur est en mode « What's This? », cette fonction la fait retourner en mode normal, sinon elle ne fait rien.

Lors de la sortie du mode « What's This? », un QEvent de type Qt::LeaveWhatsThisMode est envoyé aux widgets de haut niveau.

Voir aussi enterWhatsThisMode() et inWhatsThisMode().

void QWhatsThis::showText ( const QPoint & pos, const QString & text, QWidget * w = 0 ) [static]

Affiche text comme une fenêtre « What's This? », à la position globale pos. L'argument optionnel w, désignant un widget, est utilisé pour déterminer l'écran approprié sur les systèmes multi-têtes (multi-head).

Voir aussi hideText().

Remerciements

Merci à Louis du Verdier pour la traduction et à Jonathan Courtois, Thibaut Cuvelier ainsi qu'à Jacques Thery pour leur relecture !

Publicité

Best Of

Actualités les plus lues

Semaine
Mois
Année
  1. «Le projet de loi des droits du développeur» : quelles conditions doivent remplir les entreprises pour que le développeur puisse réussir ? 73
  2. Les développeurs détestent-ils les antivirus ? Un programmeur manifeste sa haine envers ces solutions de sécurité 27
  3. Une nouvelle ère d'IHM 3D pour les automobiles, un concept proposé par Digia et implémenté avec Qt 3
  4. Qt Creator 2.5 est sorti en beta, l'EDI supporte maintenant plus de fonctionnalités de C++11 2
  5. Vingt sociétés montrent leurs décodeurs basés sur Qt au IPTV World Forum, en en exploitant diverses facettes (déclaratif, Web, widgets) 0
  6. PySide devient un add-on Qt et rejoint le Qt Project et le modèle d'open gouvernance 1
  7. Thread travailleur avec Qt en utilisant les signaux et les slots, un article de Christophe Dumez traduit par Thibaut Cuvelier 1
  1. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 102
  2. Pourquoi les programmeurs sont-ils moins payés que les gestionnaires de programmes ? Manquent-ils de pouvoir de négociation ? 53
  3. «Le projet de loi des droits du développeur» : quelles conditions doivent remplir les entreprises pour que le développeur puisse réussir ? 73
  4. Les développeurs détestent-ils les antivirus ? Un programmeur manifeste sa haine envers ces solutions de sécurité 27
  5. Qt Commercial : Digia organise un webinar gratuit le 27 mars sur la conception d'interfaces utilisateur et d'applications avec le framework 0
  6. Quelles nouveautés de C++11 Visual C++ doit-il rapidement intégrer ? Donnez-nous votre avis 10
  7. 2017 : un quinquennat pour une nouvelle version du C++ ? Possible, selon Herb Sutter 11
Page suivante
  1. Linus Torvalds : le "C++ est un langage horrible", en justifiant le choix du C pour le système de gestion de version Git 100
  2. Comment prendre en compte l'utilisateur dans vos applications ? Pour un développeur, « 90 % des utilisateurs sont des idiots » 229
  3. Quel est LE livre que tout développeur doit lire absolument ? Celui qui vous a le plus marqué et inspiré 96
  4. Apple cède et s'engage à payer des droits à Nokia, le conflit des brevets entre les deux firmes s'achève 158
  5. Nokia porte à nouveau plainte contre Apple pour violation de sept nouveaux brevets 158
  6. Quel est le code dont vous êtes le plus fier ? Pourquoi l'avez-vous écrit ? Et pourquoi vous a-t-il donné autant de satisfaction ? 83
  7. « Quelque chose ne va vraiment pas avec les développeurs "modernes" », un développeur à "l'ancienne" critique la multiplication des bibliothèques 101
Page suivante

Le blog Digia au hasard

Logo

Créer des applications avec un style Metro avec Qt, exemples en QML et C++, un article de Digia Qt traduit par Thibaut Cuvelier

Le blog Digia est l'endroit privilégié pour la communication sur l'édition commerciale de Qt, où des réponses publiques sont apportées aux questions les plus posées au support. 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