Partilhar via


A Interface IAccessibleEx

Os controles que não têm um provedor de Automação da Interface do Usuário da Microsoft, mas que implementam IAccessible, podem ser facilmente atualizados para fornecer alguma funcionalidade de Automação da Interface do Usuário implementando a interfaceIAccessibleEx. Essa interface permite que o controle exponha as propriedades e os padrões de controle da Automação da Interface do Usuário, sem a necessidade de uma implementação completa das interfaces do provedor de Automação da Interface do Usuário, como IRawElementProviderFragment. Para usar IAccessibleEx, IRawElementProviderFragment e todas as outras interfaces de automação da interface do usuário, inclua o arquivo de cabeçalho UIAutomation.h no código-fonte.

Por exemplo, considere um controle personalizado que tenha um valor de intervalo. O servidor Microsoft Ative Accessibility para o controle define a função do controle e é capaz de retornar seu valor atual. No entanto, como o Microsoft Ative Accessibility não define propriedades mínimas e máximas, o servidor não tem os meios para retornar os valores mínimo e máximo do controle. Um cliente de UI Automation é capaz de recuperar a função do controle, o valor atual e outras propriedades do Microsoft Active Accessibility, porque o núcleo de UI Automation pode obtê-las através de IAccessible. No entanto, sem acesso a uma interface IRangeValueProvider no objeto, a Automação UI também não consegue recuperar os valores máximo e mínimo.

O desenvolvedor de controle poderia fornecer um provedor completo de automação da interface do usuário para o controle, mas isso significaria duplicar grande parte da funcionalidade existente do implementação de IAccessible: por exemplo, navegação e propriedades comuns. Em vez disso, o desenvolvedor pode continuar a confiar em IAccessible para fornecer essa funcionalidade, enquanto adiciona suporte para propriedades específicas de controle por meio do IRangeValueProvider.

Nesta secção

Infraestrutura Comum