Les indicateurs.
Les indicateurs sont des contrôle qui affichent l'état de quelque chose. Dans la plupart des cas, les utilisateurs n'interagissent pas avec les indicateurs.
Les contrôles de cette section sont utilisables dans le corps de la fenêtre, et ne doivent pas être utilisés dans le cadre.
Les indicateurs de progression.
Les indicateurs de progression informent les utilisateurs du statut d'opérations qui durent longtemps. Voir les conseils pour fournir une rétroaction.
Les indicateurs de progression sont souvent utilisés dans un dialogue qui décrit les progrès d'un processus. Quand le processus en cours peut être interrompu, le dialogue de progression doit contenir un bouton Annuler (et supporter la touche ESC). Si l'interruption du processus est susceptible d'avoir des effets de bord, le bouton doit afficher Stop au lieu de Annuler. Utiliser un bouton poussoir pour Stop ou Annuler.
Positionnez vos indicateurs de progression à des endroits cohérents dans les fenêtres ou les dialogues. Par exemple, l'application Mail affiche un indicateur de progression asynchrone à l'extrémité droite du champ "À" quand elle trouve et affiche des adresses email qui correspondent à ce que tape l'utilisateur. Le choix d'une position cohérente permet aux utilisateurs de rechercher facilement l'état d'une opération en cours.
Il y a trois types d'indicateurs de progression adaptés à des situations particulières :
• Une barre de progression déterminée
• Une barre indéterminée
• Un indicateur de progression asynchrone.
Une barre de progression déterminée (figure 1) montre qu'un processus est en cours, et donne à l'utilisateur une indication approximative du temps où il va se terminer.
Fig. 1 : La barre de progression déterminée fournit une indication de la durée d'une opération.
Utilisation de la barre de progression déterminée
Quand la durée complète de l'opération peut être déterminée, et que vous pouvez indiquer à l'utilisateur quelle partie du processus a été accomplie. Par exemple, pour montrer la progression d'une conversion de fichier.
Assurez-vous que la barre de progression déterminée affiche le temps avec précision. Une barre de progression qui afficherai 90 % au bout de 5 secondes, puis mettrait 5 minutes pour les 10 % restants serait perturbante, et amènerait l'utilisateur à imaginer que quelque chose ne va pas.
Contenu et étiquetage de la barre de progression déterminée
Dans la barre de progression, le remplissage se déplace de gauche à droite, et doit arriver au bout avant de disparaître. Le remplissage est fourni automatiquement, mais vous pouvez définir les valeurs minimum et maximum.
Si c'est nécessaire, vous pouvez proposer dans le dialogue une phrase, complète ou partielle, comme étiquetage de l'opération en cours. Faites-le pour que les utilisateurs puissent comprendre le contexte dans lequel l'opération intervient. L'étiquetage doit être une phrase capitalisée.
Fig. 2 : barre de progression active, et inactive.
Spécifications de la barre de progression déterminée
Les barres de progression déterminées sont disponibles dans les tailles normale et réduite. La hauteur du contrôle est fixée pour chaque taille, mais vous pouvez spécifier la longueur. Voyez la figure 2 pour l'aspect d'une barre de progression active et inactive.
Implémentation de la barre de progression déterminée
Les barres de progression sont disponibles sous Interface Builder. Dans la vitre des Attributs de l'Inspecteur, mettez le style à Bar et décochez la case Indeterminate. Pour utiliser les interfaces de programmation de l'Application kit, utilisez la classe NSProgressIndicator
avec pour style NSProgressIndicatorBarStyle
.
Une barre de progression indéterminée montre à l'utilisateur qu'un processus est en cours, mais ne donne pas d'indication sur le temps de sa terminaison. Par exemple, l'application Keynote affiche une barre de progression indéterminée quand elle ouvre un fichier, comme sur la figure 3.
Fig. 3 : La durée du processus d'ouverture de fichier n'est pas déterminée
Utilisation de la barre de progression indéterminée
Choisissez la barre de progression indéterminée quand la durée du processus ne peut pas être déterminée. par exemple, si votre application cherche à établir une connexion au téléphone, vous n'avez aucun moyen de savoir combien de temps cela va prendre. Si un processus de durée indéterminée atteint un stade où sa durée peut être déterminée, changez la barre en barre de progression déterminée.
la barre de progression indéterminée s'applique dans un dialogue ou une fenêtre qui est consacré au processus. Par exemple, la barre de progression indéterminée affichée par Keynote (figure 3) est un dialogue uniquement centré sur l'ouverture du fichier. Si vous voulez fournir des informations sur un processus de longueur indéterminée associé à un élément de fenêtre comme un contrôle, ou si l'espace est limité, envisagez l'utilisation d'un indicateur de progression asynchrone.
Contenu et étiquetage de la barre de progression indéterminée
La barre de progression affiche un cylindre barré obliquement en rotation. Mac OS X le fournit automatiquement.
Vous pouvez si nécessaire la compléter par une phrase partielle ou complète sous forme d'étiquette pour que les utilisateurs sachent que processus est en cours. Cette étiquette doit être capitalisée. Vous pouvez aussi terminer l'étiquette avec des points de suspension (...) pour insister sur le caractère progressif du processus.
Fig. 4 : barre active ou inactive
Spécifications de la barre de progression indéterminée
Les barres de progression indéterminées sont disponibles en taille normale ou réduite. La hauteur est déterminée pour chaque taille, mais vous pouvez préciser la longueur. La figure 4 montre l'aspect que prend la barre quand elle est active ou inactive.
Implémentation de la barre de progression indéterminée
La barre de progression indéterminée est disponible sous Interface Builder. Dans la vitre des Attributs de l'Inspecteur, mettez le style à Bar et vérifiez que la case Indeterminate et bien cochée. Pour utiliser les interfaces de programmation de l'Application kit, utilisez la classe NSProgressIndicator
avec pour style NSProgressIndicatorBarStyle
.
Un indicateur de progression asynchrone montre aux utilisateurs qu'un processus est en cours, mais ne donne aucune indication sur le moment où il va se terminer. Par exemple, Mail affiche brièvement un indicateur de progression dans le champ À d'une fenêtre Nouveau Message (figure 5) quand elle entreprend une recherche sur le nom que tape un utilisateur.
Fig. 5 : L'indicateur de progression asynchrone indique qu'un processus est en cours.
Utilisation de l'indicateur de progression asynchrone
Utilisez l'indicateur de progression asynchrone quand l'espace est très limité comme dans un champ de texte, ou près d'un contrôle. Comme l'indicateur est petit, il est très utile pour les évènements asynchrones qui interviennent en tâche de fond, comme la récupération de messages sur un serveur.
N'utilisez pas l'indicateur asynchrone pour les tâches qui commencent indéterminées, mais peuvent devenir déterminées parce qu'un indicateur de progression déterminée a une forme différente et occupe beaucoup plus d'espace. Si le processeur peut passer de Indéterminé à déterminé, utilisez une barre de progression indéterminée, et changez-la en barre de progression déterminée.
Contenu et étiquetage de l'indicateur de progression asynchrone
Comme l'indicateur de progression asynchrone apparaît quand l'utilisateur enclenche un processus, uune étiquette n'est pas nécessaire. Si vous décidez d'en mettre une, créez une phrase complète ou partielle qui décrit brièvement le processus en cours.
Si vous décidez de fournir une étiquette pour accompagner un indicateur de progression asynchrone, capitalisez la phrase. Vous pouvez aussi terminer l'étiquette avec des points de suspension (...) pour insister sur le caractère progressif du processus.
Spécifications de l'indicateur de progression asynchrone
L'indicateur de progression asynchrone est fourni automatiquement par Mac OS X, mais vous pouvez choisir la taille qui s'adapte le mieux à l'organisation de votre fenêtre. Il est disponible dans les taille normale, réduite et mini. La figure 6 montre un indicateur de taille normale.
Fig. 6 : Indicateur de progression asynchrone de taille normale.
Implémentation de l'indicateur de progression asynchrone
L'indicateur de progression asynchrone est disponible sous Interface Builder. Dans la vitre des Attributs de l'Inspecteur, mettez le style à Spinning (rotatif) et vérifiez que la case Indeterminate et bien cochée. Pour utiliser les interfaces de programmation de l'Application kit, utilisez la classe NSProgressIndicator
avec pour style NSProgressIndicatorSpinningStyle
.