1. Mode Graphique
    1. 1- Principes fondamentaux
      1. Processus de conception
      2. Caractéristiques d'un grand logiciel
        1. Haute performance
        2. Facilité d'utilisation
        3. Aspect attractif
        4. Fiabilité
        5. Adaptabilité
        6. Interoperabilité
        7. Mobilité
      3. Principes de conception
        1. Principes (1)
        2. Principes (2)
        3. Principes (3)
      4. Pensez aux utilisateurs
        1. Compatibilité internationale
        2. Accessibilité aux handicapés
        3. Etendre l'interface
      5. Priorités
    2. 2- L'expérience du Mac
      1. L'environnement
        1. L'environnement (1)
        2. L'environnement (2)
      2. Les technologies
        1. Les technologies (1)
        2. Les technologies (2)
        3. Les technologies (3)
        4. Les technologies (4)
      3. Installation et mises à jour
        1. Packaging, installation
        2. Les assistants
    3. 3- L'interface Aqua
      1. Entrées utilisateur
        1. La souris
        2. le clavier
          1. Fonction des touches
          2. Raccourcis-clavier
          3. Navigation au clavier
        3. Sélection
        4. Edition de texte
      2. Glisser-déposer
        1. Glisser-Déposer (1)
        2. Glisser-Déposer (2)
      3. Le texte
        1. Les fontes
        2. Le style
      4. Les icônes
        1. Genres et familles d'icônes
        2. Création des icônes
        3. Icônes des barres d'outils
        4. Images propres au système
      5. Les pointeurs
      6. Les menus
        1. Comportement des menus
        2. Conception des menus
        3. La barre de menus
          1. Les menus (1)
          2. Les menus (2)
          3. Les menus (3)
        4. Menus contextuels et du Dock
      7. Les fenêtres
        1. Type et apparence
        2. Eléments
          1. Barre de titre
          2. Barre d'outils
          3. Barre de recherche
          4. Barre latérale
          5. Barre inférieure
          6. Les Tiroirs
        3. Comportement des fenêtres
          1. Comportement (1)
          2. Comportement (2)
          3. Superposition
          4. Défilement
        4. Les panneaux
          1. Les panneaux
          2. Panneaux transparents
          3. Autres panneaux
      8. Les dialogues
        1. Types de dialogues
        2. Aspect et comportement
      9. Fenêtres de dialogues
        1. Recherche, Préférences, Ouverture
        2. Enregistrement
        3. Choix, Impression
      10. Les contrôles
        1. Contrôles du cadre
          1. Contrôles en capsule
          2. Contrôles hérités
        2. Les boutons
          1. Boutons poussoirs
          2. Boutons en icônes
          3. Boutons de recherche
          4. Boutons de gradient, et d'aide
          5. Boutons à champfrein
          6. Boutons ronds
        3. Contrôles de sélection
          1. Boutons radio
          2. Cases à cocher
          3. Contrôles segmentés
          4. Boutons et menus pop-Up
          5. Menus Action
          6. Boîtes de combinaison
          7. Contrôles de chemin
          8. Puits, sélection de date
          9. Menus pop-down
          10. Glissières
          11. Contrôles pas-à-pas et placards
        4. Indicateurs
          1. Indicateurs de progression
          2. De niveau, de capacité
          3. D'estimation, de pertinence
        5. Contrôles de texte
          1. Champs d'entrée
          2. Champs à jeton
          3. Champs de recherche
          4. Listes de défilement
        6. Contrôles de visualisation
          1. Triangles d'affichage
          2. Boutons d'affichage
          3. Vues en liste
          4. Vues en colonnes
          5. Vues éclatées
          6. Vues à onglets
        7. Contrôles de groupage
          1. Séparateurs
          2. Boîtes de groupage
        8. Règles de disposition
          1. Dans le corps de la fenêtre
            1. Fenêtre de préférences
            2. Fenêtre à onglets
            3. Alerte, Dialogue
          2. Contrôles réduits et mini
            1. Contrôles réduits
            2. Mini contrôles
          3. Groupement des contrôles
          4. Positionnement dans la barre inférieure
      11. Glossaire
        1. Entrées en anglais
          1. 1- A à C
          2. 2- D à H
          3. 3- I à R
          4. 4- S à Z
        2. Entrées en français
          1. 1- A à C
          2. 2- C à G
          3. 3- I à P
          4. 4- P à Z
        3. `
    4. 4- Les leçons de Lion
      1. L'environnement de Mac OS X
      2. Principes fondamentaux
      3. L'expérience utilisateur
        1. Règles de conduite (1)
        2. Règles de conduite (2)
        3. Règles de conduite (3)
        4. Règles de conduite (4)
        5. Règles de conduite (5)
        6. Règles de conduite (6)
      4. Les technologies d'Apple
        1. Les technologies (1)
      5. -->
  2. Mode Commande

Les boutons poussoirs




Ce que dit Apple :

Les boutons entraînent une action immédiate. Si un bouton provoque un processus indéterminé, le bouton doit être atténué jusqu'à ce que le processus soit terminé, et une rétroaction d'état doit être fournie.

Si vous avez besoin de proposer deux fonctions opposées, comme Recharger ou Arrêter dans un butineur, envisagez l'utilisation de deux boutons au lieu d'un bouton à double effet qui change d'état. Un bouton à double état peut conduire à des situations où un utilisateur clique sur un bouton quand il est dans un état, mais où le clic est reçu et appliqué après que le bouton soit passé dans l'autre état.

Si vous devez proposer un seul bouton avec un double objectif, vous devez suivre les changements d'état du bouton, pour appliquer les clics correctement. Fournissez aussi une rétroaction immédiate et informative.

Important : Les contrôles décrits dans cette section s'appliquent au corps de la fenêtre. Il ne faut pas les utiliser dans le cadre. La seule exception est le bouton en icône, qui peut aussi être utilisé dans une barre d'outils. Voyez les contrôles du cadre , qui sont spécifiquement destinés à la barre d'outils et à la barre inférieure.

Les boutons poussoirs.

Un bouton poussoir provoque une action immédiate, comme l'enregistrement d'un document, l'exécution d'opérations définies par un dialogue, ou l'acceptation d'un message d'erreur. Les boutons poussoirs doivent être utilisés uniquement dans le corps d'une fenêtre, pas dans son cadre. figure figure

figure

Fig. 1 : Trois exemples de boutons poussoirs dans des fenêtres variées.

1-Utilisation des boutons poussoirs.

Comme les utilisateurs s'attendent à une action immédiate quand ils actionnent un bouton poussoir, il ne faut pas les utiliser simplement pour afficher une information, ou pour imiter le comportement d'autres contrôles. En particulier :
• N'utilisez pas de bouton poussoir pour indiquer un état comme ON ou OFF. A la place, vous pouvez utiliser des cases à cocher.
• Pas de bouton poussoir comme étiquette. A la place, utilisez un texte statique pour étiqueter des éléments et fournir une information dans l'interface.
• Evitez d'associer un menu avec un bouton poussoir. A la place du bouton poussoir, utilisez un bouton à chanfrein.

2-Le contenu des boutons poussoirs, et leur étiquetage.

Un bouton poussoir contient toujours du texte ; il ne peut pas contenir une image. Si vous devez afficher une icône, ou toute autre image sur un bouton, utiliser à la place un bouton à chanfrein.

L'étiquette d'un bouton poussoir doit être un verbe ou une phrase verbale qui décrit l'action qu'il exerce : Enregistrer, Fermer, Imprimer, Effacer, Changer le mot de passe, et ainsi de suite. Si un bouton poussoir agit sur un seul réglage, étiquetez-le aussi précisément que possible : "Choisir une image", par exemple, au lieu de "Choisir" seulement.Comme ces boutons déclenchent une action immédiate, il est inutile d'utiliser "maintenant", comme par exemple "Scanner maintenant".

Les étiquettes des boutons poussoirs doivent avoir un titre capitalisé. Si un bouton poussoir ouvre immédiatement une autre fenêtre, un dialogue, ou une application pour accomplir son action, vous pouvez compléter l'étiquette avec des points de suspension (voir la figure 2).

figure

Fig. 2 : un bouton poussoir avec des points de suspension ouvre une autre fenêtre.

figure

Fig. 3 : bouton par défaut.

Tous les boutons poussoirs doivent être d'apparence uniforme, c'est à dire sans couleur, sauf le bouton par défaut. Le bouton par défaut est celui qui accomplit une action sans danger dans un dialogue, et qui est activé en pressant Retour ou Entrer. Quand l'utilisateur presse un bouton qui n'est pas celui par défaut, comme Annuler, ce bouton se colore, et le bouton par défaut perd sa couleur. Si vous utilisez des boutons poussoirs fournis pas le système, ce comportement est automatique.

3- Spécifications des boutons poussoirs.

Taille : les boutons poussoirs dont disponibles dans les tailles normale, réduite, et mini. La hauteur du bouton est fixée pour chaque taille, mais vous pouvez spécifier sa largeur, qui dépend de la longueur du texte de l'étiquette. Si vous ne spécifiez pas une largeur suffisante, le texte est coupé à la fin.

Espacement et fonte de l'étiquette : le texte de l'étiquette ne doit pas avoir d'ombre ou d'autre effet, et il doit être dans la fonte système appropriée à la taille du bouton (c'est automatiquement proposé par Interface Builder).
• Taille normale : fonte système.
• Taille réduite : fonte système réduite.
• Taille mini : fonte système mini.

Espacement des contrôles : Les boutons poussoirs doivent être assez éloignés les uns des autres pour permettre à l'utilisateur de cliquer facilement sur un seul. En particulier, quand le bouton poussoir peut entraîner une action potentiellement dangereuse ou destructive (comme Effacer), il doit être plus éloigné que les indications qui suivent du bouton qui accomplit une action sûre.
• Taille normale : laissez un espace de 12 pixels entre des boutons alignés horizontalement, ou empilés verticalement.
• Taille réduite : laissez au moins 10 pixels horizontalement ou verticalement.
• Taille mini : laissez au moins 8 pixels horizontalement ou verticalement.

4- Implantation des boutons poussoirs.

Ils sont disponibles dans Interface Builder. Pour créer un bouton poussoir à l'aide des interfaces de programmation du Kit d'Application, créez un objet NSButton, de type NSMomentaryPushInButton ou NSMomentaryLightButton.


Mes commentaires :

Les boutons poussoirs sont sans doute ceux que vous utilisez le plus souvent, et sans y penser. Mais vous pouvez constater que leur usage est strictement défini sous Mac OS X, et qu'il répond toujours à des règles précises.
figure figure

Pour le programmeur, l'usage en est grandement simplifié par Interface Builder qui fournit un modèle de bouton poussoir (à droite) qu'il suffit de glisser-déposer dans la fenêtre ; on peut ensuite en changer l'étiquette très facilement (à gauche).

Traduction du commentaire de Push Button : la classe NSButton est une sous-classe de NSControl qui intercepte les évènement mouse-down (souris appuyée) et envoie un message d'action à l'objet cible quand le bouton est cliqué ou appuyé.

Mais si vous observez les vitres de l'inspecteur associées à ce même bouton (figure 6), vous verrez que la simplicité n'est qu'apparente... (NB : il m'a fallu repasser sous Léopard pour obtenir l'assemblage des vitres de la figure ci-dessous ; du point de vue de l'interface utilisateur, Snow Léopard est un veau, abominablement raté !).

figure

Fig. 6 : 4 des 7 vitres de l'Inspecteur d'un simple bouton poussoir.