Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Um padrão de controle é uma implementação de interface que expõe um aspeto específico da funcionalidade de um controle para aplicativos cliente Microsoft UI Automation. Os clientes usam as propriedades e os métodos expostos por meio de um padrão de controle para recuperar informações sobre um recurso específico do controle ou para manipular um aspeto específico do comportamento do controle. Por exemplo, um controle que apresenta uma interface tabular usa o padrão de controle Grade para expor o número de linhas e colunas na tabela e permitir que um cliente recupere itens da tabela.
A Automação da Interface do Usuário usa padrões de controle para representar comportamentos de controle comuns. Por exemplo, você usa o padrão de controle Invoke para controles que podem ser invocados, como botões, e o padrão de controle Scroll para controles com barras de rolagem, como caixas de listagem, modos de exibição de lista ou caixas de combinação. Como cada padrão de controle representa uma funcionalidade separada, os padrões de controle podem ser combinados para descrever o conjunto completo de funcionalidades suportadas por um controle específico.
Observação
Um controle agregado é criado com controles filho que fornecem a interface do usuário para a funcionalidade que é exposta pelo pai, e o pai deve implementar todos os padrões de controle que são normalmente associados com seus controles filho. Por sua vez, esses mesmos padrões de controle não precisam ser implementados pelos controles filho.
Este tópico contém as seguintes seções:
- Componentes de padrão de controle de automação da interface do usuário
- Padrões de Controle em Provedores e Clientes
- padrões de controle dinâmico
- Padrões de controle e interfaces relacionadas
- Tópicos relacionados
Componentes do padrão de controle de automação da interface do usuário
Os padrões de controle suportam métodos, propriedades, eventos e relacionamentos que são necessários para definir uma parte discreta da funcionalidade disponível em um controle.
- Os métodos permitem que os clientes de automação da interface do usuário manipulem o controle.
- As propriedades e eventos fornecem informações sobre a funcionalidade e o estado do controle.
- A relação entre um elemento de Automação da Interface do Usuário e seus pais, filhos e irmãos descreve a estrutura do elemento na árvore de Automação da Interface do Usuário.
Os padrões de controle estão relacionados a controles semelhantes à maneira como as interfaces se relacionam com objetos COM (Component Object Model). Em COM, você pode consultar um objeto para perguntar quais interfaces ele suporta e, em seguida, usar essas interfaces para acessar a funcionalidade. Na Automação da Interface do Usuário, os clientes podem perguntar a um controle quais padrões de controle ele suporta e, em seguida, interagir com o controle por meio das propriedades, métodos, eventos e estruturas expostos pelos padrões de controle suportados.
Padrões de Controle em Provedores e Clientes
Os provedores de automação da interface do usuário implementam interfaces de padrão de controle para expor o comportamento apropriado para uma parte específica da funcionalidade que é suportada pelo controle. Essas interfaces não são diretamente expostas aos clientes, mas são usadas pelo núcleo de automação da interface do usuário para implementar outro conjunto de interfaces de cliente. Por exemplo, um provedor expõe a funcionalidade de rolagem à Automação da Interface do Usuário através de IScrollProvider , e a Automação da Interface do Usuário expõe essa funcionalidade aos clientes através de IUIAutomationScrollPattern .
Padrões de controle dinâmico
Alguns controles nem sempre suportam o mesmo conjunto de padrões de controle. Por exemplo, um controle de edição de várias linhas permite a rolagem vertical somente quando contém mais linhas de texto do que pode ser exibido em sua área visível. A rolagem é desativada quando texto suficiente é removido para que a rolagem não seja mais necessária. Neste exemplo, IUIAutomationScrollPattern é suportado dinamicamente, dependendo da quantidade de texto na caixa de edição.
Padrões de controle e interfaces relacionadas
A tabela a seguir descreve os padrões de controle de automação da interface do usuário. A tabela também lista as interfaces de provedor usadas para implementar os padrões de controle e as interfaces de cliente usadas para acessá-los.
| Nome | Interface do provedor | Interface do cliente | Descrição |
|---|---|---|---|
| Anotação | IAnnotationProvider | IUIAutomationAnnotationPattern | Usado para expor as propriedades de uma anotação em um documento, por exemplo, comentários na margem que estão conectados ao texto do documento. |
| Doca | IDockProvider | IUIAutomationDockPattern | Usado para controles que podem ser encaixados em um contêiner de encaixe, por exemplo, barras de ferramentas ou paletas de ferramentas. |
| Arraste | IDragProvider | IUIAutomationDragPattern | Usado para suportar controles arrastáveis ou controles com itens arrastáveis. |
| DropTarget | IDropTargetProvider | IUIAutomationDropTargetPattern | Usado para suportar controles que podem ser o alvo de uma operação de arrastar e soltar. |
| ExpandirRecolher | IExpandCollapseProvider | IUIAutomationExpandCollapsePattern | Usado para controles que podem ser expandidos ou recolhidos, por exemplo, itens de menu em um aplicativo, como o menu Arquivo. |
| Grid | IGridProvider | IUIAutomationGridPattern | Usado em controlos que suportam funções de grelha, como redimensionar e mover para uma célula específica, por exemplo, a vista de ícones grandes no Windows Explorer ou tabelas simples no Microsoft Office Word. |
| ItemDeGrelha | IGridItemProvider | IUIAutomationGridItemPattern | Usado para controles que têm células em grades. As células individuais devem suportar o padrão GridItem, por exemplo, cada célula na vista de detalhes do Explorador do Windows. |
| Invoque | IInvokeProvider | IUIAutomationInvokePattern | Usado para controles que podem ser invocados, como botões. |
| ItemContainer | IItemContainerProvider | IUIAutomationItemContainerPattern | Usado para controles que podem conter outros itens. |
| LegacyIAccessible | ILegacyIAccessibleProvider | IUIAutomationLegacyIAccessiblePattern | Usado para expor propriedades e métodos do Microsoft Ative Accessibility para clientes de automação da interface do usuário. |
| Vista Múltipla | IMultipleViewProvider | IUIAutomationMultipleViewPattern | Usado para controlos que podem alternar entre várias representações do mesmo conjunto de informações, dados ou elementos, por exemplo, um controlo de visualização de lista onde os dados estão disponíveis em miniatura, bloco, ícone, lista ou vista de detalhes. |
| ModeloDeObjeto | IObjectModelProvider | IUIAutomationObjectModelPattern | Usado para expor um ponteiro ao modelo de objeto subjacente de um documento. Esse padrão de controle permite que um cliente navegue de um elemento de automação da interface do usuário para o modelo de objeto subjacente. |
| ValorDoIntervalo | IRangeValueProvider | IUIAutomationRangeValuePattern | Usado para controles que têm um intervalo de valores. Por exemplo, um controle de rotador que exibe anos pode ter um intervalo de 1900 a 2010, enquanto um controle de rotador que exibe meses teria um intervalo de 1 a 12. |
| Deslizar | IScrollProvider | IUIAutomationScrollPattern | Usado para controles que podem rolar quando há mais informações do que podem ser exibidas na área visível do controle. |
| Item de Rolagem | IScrollItemProvider | IUIAutomationScrollItemPattern | Usado para controles que têm itens individuais em uma lista que rola, por exemplo, um controle de lista em um controle de caixa de combinação. |
| Seleção | ISelectionProvider | IUIAutomationSelectionPattern | Usado para controles de contêiner de seleção, por exemplo, caixas de listagem e caixas de combinação. |
| ItemDeSeleção | ISelectionItemProvider | IUIAutomationSelectionItemPattern | Usado para itens individuais em controles de contêiner de seleção, como caixas de listagem e caixas de combinação. |
| Planilha | ISpreadsheetProvider | IUIAutomationSpreadsheetPattern | Usado para expor o conteúdo de uma planilha ou outro documento baseado em grade. Os controles que implementam o padrão de controle Planilha também devem implementar o padrão de controle Grid. |
| SpreadsheetItem | ISpreadsheetItemProvider | IUIAutomationSpreadsheetItemPattern | Usado para expor as propriedades de uma célula em uma planilha ou outro documento baseado em grade. Os controles que implementam o padrão de controle SpreadsheetItem também devem implementar o padrão de controle GridItem. |
| Estilos | IStylesProvider | IUIAutomationStylesPattern | Usado para descrever um elemento da interface do usuário que tem um estilo, cor de preenchimento, padrão de preenchimento ou forma específicos. |
| EntradaSincronizada | ISynchronizedInputProvider | IUIAutomationSynchronizedInputPattern | Usado para controles que aceitam entrada de teclado ou mouse. |
| Tabela | ITableProvider | IUIAutomationTablePattern | Usado para controles que têm uma grade e informações de cabeçalho. |
| TableItem | ITableItemProvider | IUIAutomationTableItemPattern | Usado para itens numa tabela. |
| Texto | ITextProvider | IUIAutomationTextPattern | Usado para editar controles e documentos que expõem informações textuais. |
| Editor de texto | ITextEditProvider | IUIAutomationTextEditPattern | Usado para editar controles que modificam texto programaticamente, por exemplo, um controle que executa a correção automática ou permite a composição de entrada. |
| TextChild | ITextChildProvider | IUIAutomationTextChildPattern | Usado para aceder ao ancestral mais próximo de um elemento que suporta o padrão de controlo de Texto. |
| TextRange | ITextRangeProvider | IUIAutomationTextRange | Usado para recuperar conteúdo textual, atributos de texto e objetos incorporados de controles baseados em texto, como controles de edição e documentos. |
| Alternar | IToggleProvider | IUIAutomationTogglePattern | Usado para controles onde o estado pode ser alternado, por exemplo, caixas de seleção e itens de menu selecionáveis. |
| Transforme | ITransformProvider | IUIAutomationTransformPattern | Usado para controles que podem ser redimensionados, movidos e girados. Os usos típicos para o padrão de controle Transform são em designers, formulários, editores gráficos e aplicativos de desenho. |
| valor | IValueProvider | IUIAutomationValuePattern | Usado para controles que têm um valor que não está dentro de um intervalo especificado, por exemplo, um seletor de data e hora. |
| ItemVirtualizado | IVirtualizedItemProvider | IUIAutomationVirtualizedItemPattern | Usado para controles que funcionam com itens em uma lista virtual. |
| Janela | IWindowProvider | IUIAutomationWindowPattern | Usado para janelas. Exemplos são janelas de aplicativos de nível superior, janelas filhas de interface de vários documentos (MDI) e caixas de diálogo. |
Tópicos relacionados
-
Conceptual
-
Implementando padrões de controle de automação da interface do usuário
-
Mapeamento de padrões de controle para clientes de automação da interface do usuário