Compartilhar via


Tipo de controle de árvore

Este tópico fornece informações sobre o suporte do Microsoft Automação da Interface do Usuário para o tipo de controle Árvore.

O tipo de controle Árvore é usado para contêineres cujo conteúdo tem relevância como uma hierarquia de nós, como com a maneira como arquivos e pastas são exibidos no painel esquerdo do Windows Explorer. Cada nó tem o potencial de conter outros nós, chamados nós filhos. Nós pais ou nós que contêm nós filhos, podem ser exibidos como expandidos ou recolhidos. O controle de exibição de árvore do Windows (conforme identificado por WC_TREEVIEW) é um exemplo de um controle que pertence ao tipo de controle Árvore .

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 Árvore. Os requisitos de Automação da Interface do Usuário se aplicam a todos os controles de item de árvore 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

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 de árvore 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
  • Árvore
    • DataItem (0 ou mais)
    • TreeItem (0 ou mais)
      • TreeItem (0 ou mais)
        • ...
    • ScrollBar (0, 1, 2)
  • Árvore
    • DataItem (0 ou mais)
    • TreeItem (0 ou mais)
      • TreeItem (0 ou mais)
        • ...

 

A exibição de controle da árvore de Automação da Interface do Usuário consiste em:

  • Zero de muitos itens dentro do contêiner (os itens podem ser baseados nos tipos de controle TreeItem ou DataItem ).
  • Controles de barra de rolagem zero, um ou dois

A exibição de conteúdo da árvore Automação da Interface do Usuário consiste em zero ou muitos itens dentro do contêiner (os itens podem ser baseados nos tipos de controle TreeItem ou DataItem).

Propriedades relevantes

A tabela a seguir lista as propriedades Automação da Interface do Usuário cujo valor ou definição é especialmente relevante para o tipo de controle Árvore. 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 Veja as observações. Os controles de árvore têm um ponto clicável que faz com que a árvore ou um dos itens no contêiner de árvore receba o foco. Um controle de árvore só poderá ter um ponto clicável se for possível clicar em um local na árvore sem fazer com que um item seja selecionado ou receber o foco.
UIA_ControlTypePropertyId Árvore Esse valor é o mesmo para todas as estruturas da IU.
UIA_IsContentElementPropertyId TRUE O controle de árvore sempre está incluído na exibição de conteúdo da árvore da Automação da Interface do Usuário.
UIA_IsControlElementPropertyId TRUE O controle de árvore sempre está incluído na exibição de controle da árvore da 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.
UIA_LabeledByPropertyId Veja as observações. Se o controle de árvore tiver um rótulo associado a ele, essa propriedade retornará um ponteiro IUIAutomationElement para esse rótulo. Caso contrário, a propriedade retornará uma referência nula.
UIA_LocalizedControlTypePropertyId Veja as observações. Cadeia de caracteres localizada correspondente ao tipo de controle Árvore . O valor padrão é "tree" para en-US ou english (Estados Unidos).
UIA_NamePropertyId Veja as observações. O valor da propriedade de nome de um controle de árvore geralmente vem do texto que rotula o controle. Se não houver nenhum rótulo de texto, você deverá fornecer um valor para essa propriedade.

 

Padrões de controle necessários

A tabela a seguir lista os padrões de controle de Automação da Interface do Usuário necessários para serem suportados por todos os controles de árvore. 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.

Padrão de Controle/Propriedade do Padrão Suporte/Valor Observações
IScrollProvider Depende Implemente o padrão de controle Rolagem se os itens no contêiner de árvore puderem ser rolados.
ISelectionProvider Depende Os controles de árvore que contêm um conjunto de itens selecionáveis devem implementar o padrão de controle Seleção . Ele não precisará ser implementado se a seleção de um item não transmitir informações significativas ao usuário.
CanSelectMultiple Veja as observações. Implemente essa propriedade se o controle de árvore der suporte a várias seleções (a maioria dos controles de árvore não dá suporte a várias seleções).
Isselectionrequired Veja as observações. O valor dessa propriedade será exposto se o controle exigir que um item seja selecionado.

 

Eventos obrigatórios

A tabela a seguir lista os eventos de Automação da Interface do Usuário aos quais todos os controles de árvore devem 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 de alteração de propriedade.
UIA_IsEnabledPropertyId evento de alteração de propriedade. Se o controle der suporte à propriedade IsEnabled , ele deverá dar suporte a esse evento.
UIA_IsOffscreenPropertyId evento de alteração de propriedade. Se o controle der suporte à propriedade IsOffscreen , ele deverá dar suporte a esse evento.
UIA_ScrollHorizontallyScrollablePropertyId evento de alteração de propriedade. Se o controle der suporte ao padrão de controle Scroll , ele deverá dar suporte a esse evento.
UIA_ScrollHorizontalScrollPercentPropertyId evento de alteração de propriedade. Se o controle der suporte ao padrão de controle Scroll , ele deverá dar suporte a esse evento.
UIA_ScrollHorizontalViewSizePropertyId evento de alteração de propriedade. Se o controle der suporte ao padrão de controle Scroll , ele deverá dar suporte a esse evento.
UIA_ScrollVerticalScrollPercentPropertyId evento de alteração de propriedade. Se o controle der suporte ao padrão de controle Scroll , ele deverá dar suporte a esse evento.
UIA_ScrollVerticallyScrollablePropertyId evento de alteração de propriedade. Se o controle der suporte ao padrão de controle Scroll , ele deverá dar suporte a esse evento.
UIA_ScrollVerticalViewSizePropertyId evento de alteração de propriedade. Se o controle der suporte ao padrão de controle Scroll , ele deverá dar suporte a esse evento.
UIA_Selection_InvalidatedEventId Se o controle der suporte ao padrão de controle Seleção , ele deverá dar suporte a esse evento.
UIA_StructureChangedEventId

 

Conceitual

Visão Geral dos Tipos de Controle de Automação de Interface do Usuário

Visão geral de automação da interface do usuário