Práticas recomendadas de Acessibilidade

Implementar as práticas recomendadas descritas nesta seção ajuda a garantir que seu aplicativo esteja acessível para pessoas que usam produtos de tecnologia assistencial. Muitas dessas práticas recomendadas se concentram em um bom design de interface do usuário. Cada prática recomendada inclui informações de implementação para controles ou aplicativos. Em muitos casos, grande parte do trabalho para atender a essas práticas recomendadas já está incluída nos controles.

Este tópico inclui as seções a seguir.

Acesso Programático

As práticas recomendadas nesta seção enure que os produtos de tecnologia assistencial têm acesso programático adequado às informações e funcionalidades da interface do usuário.

Habilitar o acesso programático a todos os elementos e texto da interface do usuário

Os elementos de interface do usuário do seu aplicativo devem ser programáticamente acessíveis para produtos de tecnologia assistencial. Todos os elementos de interface do usuário devem ter rótulos, devem expor todos os valores de propriedade e devem gerar todos os eventos apropriados. Para os controles de Windows padrão, a maior parte desse trabalho já é feita por meio dos objetos proxy microsoft Automação da Interface do Usuário e Microsoft Active Accessibility. No entanto, os controles personalizados exigem trabalho adicional para garantir que eles sejam totalmente expostos para que os fornecedores de tecnologia assistencial possam identificar e manipular elementos da interface do usuário do aplicativo.

Seguir essa prática recomendada permite que os fornecedores de tecnologia assistencial identifiquem e manipulem elementos da interface do usuário do produto.

Colocar nomes, títulos e descrições em objetos de interface do usuário, quadros e páginas

Como os produtos de tecnologia assistencial, especialmente os leitores de tela, usam títulos para entender a localização de um quadro, objeto ou página no esquema de navegação, os títulos devem ser muito descritivos. Bons títulos descritivos permitem que produtos de tecnologia assistencial identifiquem e manipulem elementos de interface do usuário em controles e aplicativos. Por exemplo, um título de página da Web de "Página da Web da Microsoft" será inútil se o usuário tiver navegado profundamente em uma área específica. Um título descritivo é crucial para usuários cegos e dependem de leitores de tela.

Seguir essa prática recomendada permite que produtos de tecnologia assistencial identifiquem e manipulem a interface do usuário em controles e aplicativos de exemplo.

Garantir que eventos programáticos sejam disparados por todas as atividades da interface do usuário

Seu aplicativo deve gerar eventos sempre que ocorrerem alterações no estado ou aparência de um elemento de interface do usuário.

Seguir essa prática recomendada permite que os produtos de tecnologia assistencial ouçam as alterações na interface do usuário e notifiquem o usuário sobre essas alterações.

Configurações do usuário

A prática recomendada nesta seção garante que os controles ou aplicativos não substituam as configurações do usuário.

Respeitar todos os System-Wide Configurações e não interferir nas funções de acessibilidade

Os usuários podem usar Painel de Controle para definir alguns sinalizadores de todo o sistema; outros sinalizadores podem ser definidos programaticamente. Essas configurações não devem ser alteradas por controles ou aplicativos. Além disso, os aplicativos devem dar suporte às configurações de acessibilidade do sistema operacional host.

Seguir essa prática recomendada permite que os usuários definam as configurações de acessibilidade e saibam que essas configurações não serão alteradas pelos aplicativos.

Design da interface do usuário visual

As práticas recomendadas nesta seção garantem que os controles ou aplicativos usem cores e imagens com eficiência e possam ser usados por produtos de tecnologia assistencial.

Não Hard-Code Cores

As pessoas que são cegas de cor, têm baixa visão ou estão usando uma tela em preto e branco podem não ser capazes de usar aplicativos com cores codificadas em código.

Seguir essa prática recomendada permite que os usuários ajustem combinações de cores com base nas necessidades individuais.

Suporte a alto contraste e todos os atributos de exibição do sistema

Os aplicativos não devem interromper ou desabilitar configurações de contraste selecionadas pelo usuário, em todo o sistema, seleções de cores ou outros atributos e configurações de exibição em todo o sistema. As configurações em todo o sistema adotadas por um usuário aprimoram a acessibilidade dos aplicativos, portanto, não devem ser desabilitadas ou desconsideradas pelos aplicativos. A cor deve ser usada em sua combinação de primeiro plano em segundo plano correta para fornecer o contraste adequado. As cores não relacionadas não devem ser misturadas e as cores não devem ser revertidas.

Muitos usuários exigem combinações específicas de alto contraste, como texto em branco em uma tela de fundo preta. Desenhar estes invertidos, pois o texto preto em um plano de fundo branco faz com que o plano de fundo sangre em primeiro plano e pode dificultar a leitura para alguns usuários.

Garantir que toda a interface do usuário seja dimensionada corretamente por qualquer configuração de DPI

Verifique se todos os elementos de interface do usuário podem ser dimensionados corretamente por qualquer configuração de pontos por polegada (dpi). Além disso, verifique se os elementos de interface do usuário se encaixam em uma tela de 1024 x 768 com 120 pontos por polegada (dpi).

Navegação por teclado

As práticas recomendadas nesta seção garantem que todas as funcionalidades do aplicativo sejam acessíveis aos usuários que dependem do teclado.

Fornecer a interface do teclado para todos os elementos da interface do usuário

As paradas de tabulação, especialmente quando cuidadosamente planejadas, dão aos usuários outra maneira de navegar pela interface do usuário.

Os aplicativos devem fornecer as seguintes interfaces de teclado:

  • As paradas de tabulação para todos os controles com os quais o usuário pode interagir, como botões, links ou caixas de listagem.
  • Ordem de tabulação lógica.

Mostrar o foco do teclado

Os usuários precisam saber qual objeto tem o foco do teclado para que possam antecipar o efeito de seus pressionamentos de tecla. Para realçar o foco do teclado, use cores, fontes ou elementos gráficos, como retângulos ou ampliação. Para realçar audivelmente o foco do teclado, altere o volume, o tom ou a qualidade tonal.

Para evitar confusão, os aplicativos devem ocultar todos os indicadores de foco visual e seleções dim localizadas em janelas inativas (ou painéis).

Os aplicativos devem fazer o seguinte com o foco do teclado:

  • Um item sempre deve ter o foco do teclado.
  • O foco do teclado deve ser visível e óbvio.
  • As seleções e/ou itens focados devem ser realçados visualmente.

Suporte a padrões de navegação e esquemas de navegação avançados

Diferentes aspectos da navegação por teclado fornecem maneiras diferentes de os usuários navegarem pela interface do usuário.

Os aplicativos devem fornecer as seguintes interfaces de teclado:

  • Teclas de atalho e chaves de acesso sublinhadas para todos os comandos, menus e controles.
  • Atalhos de teclado para links importantes.
  • Todos os itens de menu têm uma chave de acesso; todos os botões têm teclas de acelerador, todos os comandos têm uma tecla de acelerador.

Não permitir que a localização do mouse interfira na navegação do teclado

A localização do mouse não deve interferir na navegação do teclado. Por exemplo, se o mouse estiver posicionado em algum lugar e o usuário estiver navegando com o teclado, um clique do mouse não deverá acontecer, a menos que seja iniciado pelo usuário.

Multi-modal Interface

A prática recomendada nesta seção garante que a interface do usuário do aplicativo inclua alternativas para elementos visuais.

Fornecer equivalentes User-Selectable para elementos não textuais

Para cada elemento que não seja de texto, forneça um equivalente selecionável pelo usuário para texto, transcrições ou descrições de áudio, como texto alt, legendas ou comentários visuais.

Elementos não textuais abrangem uma ampla gama de elementos de interface do usuário, incluindo: imagens, regiões de mapa de imagens, animações, applets, quadros, scripts, botões gráficos, sons, arquivos de áudio autônomos e vídeo. Elementos não textuais são importantes quando contêm informações visuais, fala ou informações de áudio gerais às quais o usuário precisa de acesso para entender o conteúdo da interface do usuário.

Usar cor, mas também fornecer alternativas à cor

Use a cor para aprimorar, enfatizar ou reiterar informações mostradas por outros meios, mas não comunique as informações usando apenas a cor. Os usuários que são cegos de cor ou têm uma exibição monocromática precisam de alternativas à cor.

Usar APIs de entrada padrão com chamadas Device-Independent

Chamadas independentes de dispositivo garantem que todos os dispositivos de entrada sejam tratados igualmente, ao mesmo tempo em que fornecem produtos de tecnologia assistencial com informações necessárias sobre a interface do usuário.

Visão geral da API de Automação Windows