Compartilhar via


Como definir a ordem de tabulação nos Windows Forms

A ordem de tabulação é a ordem na qual um usuário move o foco de um controle para outro ao pressionar a tecla Tab. Cada formulário tem sua própria ordem de tabulação. Por padrão, a ordem de tabulação é a mesma que a ordem na qual você criou os controles. A numeração da ordem de tabulação começa com zero, e aumenta em valor, sendo definida pela propriedade TabIndex.

Você também pode definir a ordem de tabulação diretamente usando a janela Propriedade do designer ou com o modo Tab Order.

A ordem de tabulação pode ser definida na janela Propriedades do designer usando a TabIndex propriedade. A propriedade TabIndex de um controle determina a posição dele na ordem de tabulação. Por padrão, o primeiro controle adicionado ao designer tem um TabIndex valor de 0, o segundo tem um TabIndex de 1 e assim por diante. Depois que a maior TabIndex estiver focada, pressionar Tab focará o controle com o menor valor TabIndex.

Controles de contêiner, como um GroupBox controle, tratam seus filhos como separados do restante do formulário. Cada filho no contêiner tem um valor próprio TabIndex. Como um controle de contêiner não pode ser focado, quando a ordem de tabulação atinge o controle de contêiner, o controle filho do contêiner com o menor TabIndex é focado. Quando a Tab é pressionada, cada controle filho é focado conforme seu valor TabIndex até o último controle. Quando Tab é pressionado no último controle, o foco passa para o próximo controle no elemento pai do contêiner, com base no próximo valor de TabIndex.

Qualquer controle em seu formulário pode ser ignorado na ordem de tabulação definindo a propriedade TabStop como falsa.

Desenhista

Use a janela Propriedades do Visual Studio para definir a ordem de tabulação de um controle.

  1. Selecione o controle na ferramenta de design.

  2. Na janela Propriedades no Visual Studio, defina a TabIndex propriedade do controle como um número apropriado.

    Painel de Propriedades do Visual Studio para .NET Windows Forms mostrando a propriedade TabIndex.

Programático

A ordem de tabulação dos controles pode ser definida por meio do código:

  1. Defina a TabIndex propriedade como um valor numérico.

    Button1.TabIndex = 1
    
    Button1.TabIndex = 1;
    

Usar o modo de ordem de tabulação

O Visual Designer do Visual Studio fornece uma maneira interativa de definir a TabIndex propriedade para controles. O modo Tab Order permite que você defina sequencialmente a ordem de tabulação de controles clicando neles no Designer Visual.

  1. No Visual Studio, no menu Exibir, selecione Ordem de Tabulação.

    Isso ativa o modo de seleção de ordem de tabulação do formulário. Um número (que representa a propriedade TabIndex) aparece no canto superior esquerdo de cada controle.

  2. Clique nos controles sequencialmente para estabelecer a ordem de tabulação desejada.

    Observação

    O local de um controle dentro da ordem de tabulação pode ser definido como qualquer valor maior ou igual a 0. Quando ocorrem duplicatas, a ordem z dos dois controles é avaliada e o controle na parte superior é tabulado primeiro. (A ordem z é a camada visual de controles em um formulário ao longo do eixo z do formulário [profundidade]. A ordem z determina quais controles estão na frente de outros controles.) Para obter mais informações sobre a ordem z, consulte Objetos em camadas nosdo Windows Forms.

  3. Para concluir, selecione Exibir>Ordem de Tabulação novamente.

    Observação

    Controles que não podem ser focados, como controles desabilitados e invisíveis, não estão incluídos na ordem de tabulação. À medida que um usuário pressiona a tecla Tab , esses controles são ignorados.

Remover um controle da ordem de tabulação

Você pode impedir que um controle receba o foco quando a tecla Tab é pressionada, definindo a TabStop propriedade como false. O controle é ignorado quando você percorre os controles com a tecla Tab . O controle não perde sua ordem de tabulação quando essa propriedade é definida como false.

Observação

Um grupo de botões de opção tem uma única parada de tabulação em tempo de execução. O botão selecionado, o botão com sua Checked propriedade definida como true, tem sua TabStop propriedade definida automaticamente como true. Outros botões no grupo de botões de opção têm a sua propriedade TabStop ajustada para false.

Definir TabStop com o designer

  1. Selecione o controle na ferramenta de design.

  2. Na janela Propriedades no Visual Studio, defina a propriedade TabStop como False.

    Painel de Propriedades do Visual Studio para .NET Windows Forms com a propriedade TabStop exibida.

Definir TabStop programaticamente

  1. Defina a propriedade TabStop como false.

    Button1.TabStop = false;
    
    Button1.TabStop = False
    

Consulte também