Tipo de controle TreeItem
Este tópico fornece informações sobre o suporte do Microsoft Automação da Interface do Usuário para o tipo de controle TreeItem.
O tipo de controle TreeItem representa um nó dentro de um contêiner de árvore. Cada nó no modo de exibição de árvore pode conter outros nós, chamados nós filho. Nós pais ou nós que contêm nós filhos, podem ser exibidos como expandidos ou recolhidos.
As seções a seguir definem a estrutura de árvore Automação da Interface do Usuário necessária, propriedades, padrões de controle e eventos para o tipo de controle TreeItem. 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
- Propriedades relevantes
- Padrões de controle necessários
- Eventos obrigatórios
- Comentá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 de item 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 |
---|---|
|
|
Os controles de item de árvore podem ter zero ou mais filhos de item de árvore na exibição de conteúdo da árvore Automação da Interface do Usuário. Se o controle de item de árvore tiver funcionalidade além do que é exposto nos padrões de controle listados abaixo, o controle deverá ser baseado no tipo de controle DataItem .
Os itens de árvore recolhidos não aparecem no modo de exibição de controle ou no modo de exibição de conteúdo até que sejam expandidos e visíveis (ou possam ser rolados para a exibição).
O modo de exibição de controle pode conter detalhes adicionais para um controle, incluindo uma imagem associada ou um botão. Por exemplo, um item em uma exibição de estrutura de tópicos pode conter uma imagem, bem como um botão para expandir ou recolher a estrutura de tópicos. Esses objetos de detalhes não aparecem na exibição de conteúdo porque as informações já são representadas pelo item de árvore pai.
Os itens de árvore que são rolados para fora da tela aparecem nas exibições de controle e conteúdo da árvore Automação da Interface do Usuário e devem ter a propriedade IUIAutomationElement::CurrentIsOffscreen (ou CachedIsOffscreen) definida como TRUE.
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 TreeItem. 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. | Essa propriedade deve retornar um local que faça com que o item de árvore altere o estado de seleção ou fique focado. |
UIA_ControlTypePropertyId | TreeItem | Esse valor é o mesmo para todas as estruturas da IU. |
UIA_IsContentElementPropertyId | TRUE | O controle de item de árvore sempre é incluído na exibição de conteúdo da árvore Automação da Interface do Usuário. |
UIA_IsControlElementPropertyId | TRUE | O controle de item de árvore sempre está incluído na exibição de controle da árvore 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_IsOffscreenPropertyId | Veja as observações. | Essa propriedade indica se um controle de item de árvore é rolado para fora da tela. |
UIA_ItemStatusPropertyId | Veja as observações. | Se o controle contiver status que está sendo atualizado dinamicamente, essa propriedade deverá ter suporte para que uma tecnologia adaptativa possa receber atualizações quando o status do elemento for alterado. |
UIA_ItemTypePropertyId | Veja as observações. | Se o controle de item de árvore usa um ícone visual para indicar que é um tipo específico de item, essa propriedade deve ter suporte e deve indicar o tipo de item. |
UIA_LabeledByPropertyId | NULL | Os controles de item de árvore são auto-rotulação. |
UIA_LocalizedControlTypePropertyId | Veja as observações. | Cadeia de caracteres localizada correspondente ao tipo de controle TreeItem. O valor padrão é "item de árvore" para en-US ou inglês (Estados Unidos). |
UIA_NamePropertyId | Veja as observações. | Essa propriedade expõe o texto exibido para cada controle de item de árvore. |
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 item 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 |
---|---|---|
IExpandCollapseProvider | Obrigatório | Todos os itens de árvore devem dar suporte ao padrão de controle ExpandCollapse porque todos os itens podem ser expandidos ou recolhidos. |
Expandcollapsestate | Nó Expandido, Recolhido ou Folha | Os itens de árvore são nós folha quando não são expandidos ou recolhidos. |
IInvokeProvider | Depende | Implemente o padrão de controle Invoke se o item de árvore puder executar um comando. |
IScrollItemProvider | Depende | Implemente o padrão de controle ScrollItem se o contêiner de árvore der suporte ao padrão de controle Scroll . |
ISelectionItemProvider | Depende | Implemente o padrão de controle SelectionItem se for possível ter uma seleção ativa mantida quando o usuário retornar ao contêiner de árvore. |
Selectioncontainer | Obrigatório | Essa propriedade expõe o mesmo contêiner para todos os itens dentro do contêiner. |
Eventos obrigatórios
A tabela a seguir lista os eventos de Automação da Interface do Usuário aos quais os controles de item de árvore 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 de alteração de propriedade. | |
UIA_ExpandCollapseExpandCollapseStatePropertyId evento de alteração de propriedade. | |
UIA_Invoke_InvokedEventId | Se o controle der suporte ao padrão de controle Invoke , ele deverá dar suporte a esse evento. |
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_ItemStatusPropertyId evento de alteração de propriedade. | Se o controle der suporte à propriedade ItemStatus , ele deverá dar suporte a esse evento. |
UIA_MultipleViewCurrentViewPropertyId evento de alteração de propriedade. | Se o controle der suporte ao padrão de controle MultipleView , ele deverá dar suporte a esse evento. |
UIA_NamePropertyId evento de alteração de propriedade. | |
UIA_SelectionItem_ElementAddedToSelectionEventId | Se o controle der suporte ao padrão de controle SelectionItem , ele deverá dar suporte a esse evento. |
UIA_SelectionItem_ElementRemovedFromSelectionEventId | Se o controle der suporte ao padrão de controle SelectionItem , ele deverá dar suporte a esse evento. |
UIA_SelectionItem_ElementSelectedEventId | Se o controle der suporte ao padrão de controle SelectionItem , ele deverá dar suporte a esse evento. |
UIA_StructureChangedEventId | |
UIA_ToggleToggleStatePropertyId evento de alteração de propriedade. | Se o controle der suporte ao padrão de controle Desativar , ele deverá dar suporte a esse evento. |
UIA_ValueValuePropertyId evento de alteração de propriedade. | Se o controle der suporte ao padrão de controle Value , ele deverá dar suporte a esse evento. |
Comentários
Se um item de árvore tiver subelementos diferentes de nós de estrutura de tópicos filho, o provedor deverá manipular as informações do objeto filho com cuidado e clareza. Em Automação da Interface do Usuário, a estrutura de árvore é manipulada pela própria hierarquia de árvore. Ao ter um ou mais filhos que não são de nó de estrutura de tópicos, as diferenças entre eles e os nós de estrutura de tópicos filho reais tornam-se seriamente ambíguas.
Tópicos relacionados