Autoriser l'arrêt d'une commande

Les utilisateurs ont parfois besoin d'interrompre une commande — par exemple, parce qu'elle prend trop de temps. L'application doit permettre aux utilisateurs d'arrêter les commandes en cours, même si l'arrêt d'une commande peut ne pas annuler ou « revenir en arrière » sur tous les effets de la commande.

Conseils
  • Placez un bouton Arrêter ou Annuler également activable en appuyant sur Échap à côté de l'animation de progression pour une commande qu'il est possible d'interrompre.
  • Nommez le bouton Annuler si l'opération complète peut être abandonnée proprement sans effet collatéral, en laissant le système dans l'état où il était avant le lancement de l'opération. Terminez la commande immédiatement lorsque l'utilisateur appuie sur le bouton.
  • Nommez le bouton Arrêter si la commande peut être interrompue mais que ses effets jusqu'au moment de l'arrêt ne peuvent pas (ou ne doivent pas) être annulés. Lorsque l'utilisateur appuie sur ce bouton, ouvrez une boîte de dialogue d'alerte prévenant des effets potentiellement risqués d'un arrêt de la commande. La boîte de dialogue d'alerte ne doit comporter que deux boutons : l'un pour continuer le traitement de la commande, l'autre pour la terminer immédiatement.

Vous disposez également de l'alternative de placer le bouton Arrêter ou Annuler près du contrôle avec lequel l'utilisateur a lancé la commande à arrêter. Ne placez le bouton ici que si :

  • il n'y a aucune animation de progression pour la commande ou
  • l'animation de progression est dans la zone d'état d'une fenêtre ou à un autre endroit qui manque de place pour mettre un bouton Arrêter ou Annuler.

Dans la boîte d'alerte qui apparaît après l'appui sur le bouton Arrêter, assurez-vous que le message et les étiquettes des boutons de la boîte d'alerte sont précis et explicites. Des étiquettes de bouton ambiguës peuvent faire que les utilisateurs mettent fin ou continuent une commande contrairement à leur intention. Par exemple, utilisez :

Poursuivre la suppression des fichiers ? [Confirmer la suppression]
  [Arrêter la suppression]

plutôt que

Opération interrompue, continuer ? [Oui]
   [Non]

car dans ce dernier exemple, il n'est pas clair qu'un clic sur Oui continue l'opération ou continue la suppression (c'est-à-dire, arrête l'opération).