Tipo de controle ScrollBar
Este tópico fornece informações sobre o suporte do Microsoft Automação da Interface do Usuário para o tipo de controle ScrollBar.
Os controles de barra de rolagem permitem que um usuário role o conteúdo dentro de uma janela ou contêiner de item. O controle consiste em um conjunto de botões e um controle de polegar.
As seções a seguir definem o Automação da Interface do Usuário estrutura de árvore, propriedades, padrões de controle e eventos necessários para o tipo de controle ScrollBar. Os requisitos de Automação da Interface do Usuário se aplicam a todos os controles de barra de rolagem em que a estrutura/plataforma da interface do usuário integra Automação da Interface do Usuário suporte para tipos de controle e padrões de controle.
Este tópico inclui as seções a seguir.
- Estrutura de árvore típica
- Propriedades relevantes
- Padrões de controle necessários
- Eventos obrigatórios
- Tópicos relacionados
Estrutura de árvore típica
A tabela a seguir ilustra um controle típico e uma exibição de conteúdo da árvore Automação da Interface do Usuário que pertence aos controles da barra de rolagem e descreve o que pode ser contido em cada exibição. Para obter mais informações sobre a árvore de Automação da Interface do Usuário, consulte Visão geral da árvore de Automação da Interface do Usuário.
Exibição de controle | Exibição de conteúdo |
---|---|
|
Não aplicável. (O controle de barra de rolagem não tem conteúdo.) |
O controle da barra de rolagem pode ter de zero a cinco filhos. Como a subárvore tem mais de um controle de botão, o elemento deve definir um valor UIA_AutomationIdPropertyId específico para cada item para torná-los detectáveis para ferramentas de teste automatizadas.
Propriedades relevantes
A tabela a seguir lista as propriedades da Automação da Interface do Usuário cujo valor ou definição é especialmente relevante para controles de barra de rolagem. Observe que um controle de barra de rolagem nunca tem conteúdo; sua funcionalidade é exposta por meio do padrão de controle Scroll , que tem suporte no contêiner que está sendo rolado.
Para obter mais informações sobre Automação da Interface do Usuário propriedades, consulte Recuperando propriedades de elementos Automação da Interface do Usuário.
Propriedade de Automação da Interface do Usuário | Valor | Observações |
---|---|---|
UIA_AutomationIdPropertyId | Veja as observações. | O valor dessa propriedade deve ser exclusivo entre todos os elementos pares na exibição bruta da árvore Automação da Interface do Usuário. |
UIA_BoundingRectanglePropertyId | Veja as observações. | O retângulo mais externo que contém todo o controle. |
UIA_ClickablePointPropertyId | NaN | O controle de barra de rolagem não tem pontos clicáveis. |
UIA_ControlTypePropertyId | ScrollBar | Esse valor é o mesmo para todas as estruturas. As barras de rolagem que funcionam como controles deslizantes devem usar o tipo de controle Deslizante . |
UIA_IsContentElementPropertyId | FALSE | O controle de barra de rolagem nunca é um elemento de conteúdo. Se a barra de rolagem for um controle autônomo, ela deverá atender ao tipo de controle Slider e retornar UIA_SliderControlTypeId para a propriedade IUIAutomationElement::CurrentControlType (ou CachedControlType). |
UIA_IsControlElementPropertyId | TRUE | O controle da barra de rolagem é sempre incluído na exibição de controle da árvore de Automação da Interface do Usuário. |
UIA_IsKeyboardFocusablePropertyId | Veja as observações. | Se o controle puder receber o foco do teclado, ele deverá dar suporte a essa propriedade. Um controle de barra de rolagem raramente usa o foco, mas quando ele faz isso, o foco deve permanecer no controle da barra de rolagem em si, não nos botões filho ou no polegar. O usuário deve ser capaz de executar todas as ações de rolagem usando as teclas seta para cima e seta para baixo (ou seta para a direita e seta para a esquerda) ou as teclas PAGE UP e PAGE DOWN. |
UIA_LabeledByPropertyId | NULO | As barras de rolagem não têm rótulos. |
UIA_LocalizedControlTypePropertyId | Veja as observações. | Cadeia de caracteres localizada correspondente ao tipo de controle ScrollBar . O valor padrão é "barra de rolagem" para en-US ou inglês (Estados Unidos). |
UIA_NamePropertyId | NULO | O controle de barra de rolagem não tem elementos de conteúdo e a propriedade UIA_NamePropertyId não precisa ser definida. |
UIA_OrientationPropertyId | Veja as observações. | O controle de barra de rolagem deve sempre expor sua orientação horizontal ou vertical. |
Padrões de controle necessários
A tabela a seguir lista os padrões de controle Automação da Interface do Usuário necessários para serem suportados por todos os controles da barra de rolagem. Para obter mais informações sobre padrões de controle, consulte Visão geral dos padrões de controle da Automação da Interface do Usuário.
Observação
Quando uma barra de rolagem é usada como um controle somente para manipulação do mouse, ela não dá suporte a padrões de controle. Se ele for usado como um controle deslizante dentro de um aplicativo, ele deverá receber o tipo de controle Deslizante .
Padrão de controle | Suporte | Observações |
---|---|---|
IRangeValueProvider | Depende | O padrão de controle RangeValue só precisará ter suporte se o padrão de controle Scroll não tiver suporte no contêiner que tem a barra de rolagem. |
IScrollProvider | Nunca | O padrão de controle Scroll nunca tem suporte direto na barra de rolagem. |
Eventos obrigatórios
A tabela a seguir lista os eventos Automação da Interface do Usuário que os controles da barra de rolagem são necessários para dar suporte. Para mais informações sobre eventos, confira Visão geral de eventos de Automação da Interface do Usuário.
Evento de Automação da Interface do Usuário | Observações |
---|---|
UIA_AutomationFocusChangedEventId | |
UIA_BoundingRectanglePropertyId evento com alteração de propriedade. | |
UIA_IsEnabledPropertyId evento com alteração de propriedade. | Se o controle der suporte à propriedade IsEnabled , ele deverá dar suporte a esse evento. |
UIA_IsOffscreenPropertyId evento com alteração de propriedade. | Se o controle der suporte à propriedade IsOffscreen , ele deverá dar suporte a esse evento. |
UIA_StructureChangedEventId | |
UIA_RangeValueValuePropertyId evento com alteração de propriedade. | Se o controle der suporte ao padrão de controle RangeValue , ele deverá dar suporte a esse evento. |
Tópicos relacionados