Partager via


Développement d’applications Windows inclusives

Cet article explique comment développer des applications Windows accessibles. Plus précisément, il part du principe que vous comprenez comment concevoir la hiérarchie logique pour votre application. Découvrez comment développer des applications Windows accessibles qui incluent la navigation au clavier, les paramètres de couleur et de contraste, ainsi que la prise en charge des technologies d’assistance.

Si vous ne l’avez pas encore fait, commencez par lire Conception de logiciels inclusifs.

Vous devez effectuer trois opérations pour vous assurer que votre application est accessible :

  1. Exposez vos éléments d’interface utilisateur à l’accès par programmation.
  2. Assurez-vous que votre application prend en charge la navigation au clavier pour les personnes qui ne peuvent pas utiliser une souris ou un écran tactile.
  3. Assurez-vous que votre application prend en charge les paramètres de couleur et de contraste accessibles.

Accès programmatique

L’accès par programmation est essentiel pour créer l’accessibilité dans les applications. Pour ce faire, définissez le nom accessible (obligatoire) et la description (facultatif) pour le contenu et les éléments d’interface utilisateur interactifs dans votre application. Cela garantit que les contrôles d’interface utilisateur sont exposés à une technologie d’assistance (AT), comme les lecteurs d’écran (par exemple, le Narrateur) ou d’autres appareils de sortie (tels que les affichages braille). Sans accès par programmation, les API pour la technologie d’assistance ne peuvent pas interpréter correctement les informations, laissant l’utilisateur incapable d’utiliser les produits suffisamment, ou forcer l’AT à utiliser des interfaces ou techniques de programmation non documentées qui ne sont jamais destinées à être utilisées comme interface d’accessibilité. Lorsque les contrôles d’interface utilisateur sont exposés à la technologie d’assistance, at est en mesure de déterminer quelles actions et options sont disponibles pour l’utilisateur.

Pour plus d’informations sur la mise à disposition des éléments de l’interface utilisateur de votre application pour les technologies d’assistance (AT), consultez Exposer les informations d’accessibilité de base.

Navigation à l’aide du clavier

Pour les utilisateurs aveugles ou ayant des problèmes de mobilité, la possibilité de naviguer dans l’interface utilisateur avec un clavier est extrêmement importante. Toutefois, seuls les contrôles d’interface utilisateur qui nécessitent une interaction utilisateur pour fonctionner doivent recevoir le focus clavier. Les composants qui ne nécessitent pas d’action, comme les images statiques, n’ont pas besoin du focus clavier.

Il est important de se rappeler que contrairement à la navigation avec une souris ou une touche tactile, la navigation au clavier est linéaire. Lorsque vous envisagez la navigation au clavier, réfléchissez à la façon dont votre utilisateur interagit avec votre produit et à la navigation logique. Dans les cultures occidentales, les gens lisent de gauche à droite, en haut en bas. Il est donc courant de suivre ce modèle pour la navigation au clavier.

Lors de la conception de la navigation au clavier, examinez votre interface utilisateur et réfléchissez à ces questions :

  • Comment les contrôles sont-ils disposés ou regroupés dans l’interface utilisateur ?
  • Existe-t-il plusieurs groupes de contrôles importants ?
    • Si oui, ces groupes contiennent-ils un autre niveau de groupes ?
  • Parmi les contrôles homologues, la navigation doit-elle être effectuée en tabulation ou via une navigation spéciale (par exemple, des touches de direction) ou les deux ?

L’objectif est d’aider l’utilisateur à comprendre comment l’interface utilisateur est disposée et à identifier les contrôles actionnables. Si vous trouvez que l’utilisateur se trouve confronté à un trop grand nombre de taquets de tabulation lors de la boucle de navigation, envisagez de regrouper les contrôles. Certains contrôles associés, tels qu’un contrôle hybride, doivent peut-être être traités à ce stade d’exploration précoce. Après avoir commencé à développer votre produit, il est difficile de retravailler la navigation au clavier, donc planifiez soigneusement et planifiez tôt !

Pour en savoir plus sur la navigation au clavier entre les éléments de l’interface utilisateur, consultez l’accessibilité du clavier.

En outre, le livre électronique Engineering Software for Accessibility a un excellent chapitre sur ce sujet intitulé Conception de la hiérarchie logique.

Couleur et contraste

L’une des fonctionnalités d’accessibilité intégrées dans Windows est le mode Contraste élevé, ce qui améliore le contraste de couleur du texte et des images sur l’écran de l’ordinateur. Pour certaines personnes, l’augmentation du contraste dans les couleurs réduit l’entraînement des yeux et facilite la lecture. Lorsque vous vérifiez votre interface utilisateur en contraste élevé, vous souhaitez vérifier que les contrôles ont été codés de manière cohérente et avec des couleurs système (pas avec des couleurs codées en dur) pour vous assurer qu’ils pourront voir tous les contrôles sur l’écran qu’un utilisateur n’utilise pas de contraste élevé verrait.

XAML

<Button Background="{ThemeResource ButtonBackgroundThemeBrush}">OK</Button>

Pour plus d’informations sur l’utilisation des couleurs système et des ressources, consultez les ressources de thème XAML.

Tant que vous n’avez pas remplacé les couleurs système, une application UWP prend en charge les thèmes à contraste élevé par défaut. Si un utilisateur a choisi qu’il souhaite que le système utilise un thème à contraste élevé à partir des paramètres système ou des outils d’accessibilité, l’infrastructure utilise automatiquement des couleurs et des paramètres de style qui produisent une disposition et un rendu à contraste élevé pour les contrôles et les composants de l’interface utilisateur.

Pour plus d’informations, consultez thèmes à contraste élevé.

Si vous avez décidé d’utiliser votre propre thème de couleur au lieu des couleurs système, tenez compte des instructions suivantes :

Rapport de contraste des couleurs : l’article 508 mis à jour de la Loi américaine sur l’invalidité, ainsi que d’autres lois, exige que les contrastes de couleurs par défaut entre le texte et son arrière-plan doivent être 5:1. Pour le texte volumineux (tailles de police de 18 points, ou 14 points et en gras), le contraste par défaut requis est 3:1.

Combinaisons de couleurs : environ 7 pour cent des mâles (et moins de 1 pour cent des femmes) ont une forme de carence en couleur. Les utilisateurs ayant un colorblindness ont des problèmes de distinction entre certaines couleurs. Il est donc important que la couleur seule ne soit jamais utilisée pour transmettre l’état ou la signification dans une application. Comme pour les images décoratives (telles que les icônes ou les arrière-plans), les combinaisons de couleurs doivent être choisies de manière à maximiser la perception de l’image par les utilisateurs en forme de couleur.

Liste de vérification de l’accessibilité

Voici une version abrégée de la liste de contrôle d’accessibilité :

  1. Définissez le nom accessible (obligatoire) et la description (facultatif) pour le contenu et les éléments d’interface utilisateur interactifs dans votre application.
  2. Mettez en œuvre l’accessibilité du clavier :
  3. Vérifiez visuellement votre interface utilisateur pour vous assurer que le contraste du texte est suffisant, que le rendu des éléments est correct dans les thèmes à contraste élevé et que les couleurs sont utilisées correctement.
  4. Exécutez les outils d’accessibilité, traitez les problèmes signalés et vérifiez l’expérience de lecture d’écran. (Consultez la rubrique sur les tests d’accessibilité.)
  5. Assurez-vous que les paramètres du manifeste de votre application suivent les instructions d’accessibilité.
  6. Déclarez votre application comme accessible dans Microsoft Store. (Voir le Accessibilité dans la rubrique store .)

Pour plus d’informations, consultez la rubrique complète de la liste de contrôle d’accessibilité.