Partilhar via


Examinar mais detalhadamente: Usando um for each... Next repetir um conjunto de

Nesta lição, você aprenderá a usar um loop For Each...Next para repetir uma coleção.

Em uma lição anterior, você aprendeu a usar um loop For...Next para executar um bloco de código um número de vezes especificado.Os objetos de coleção do Visual Basic oferecem suporte a um tipo especial de loop, o loop For Each...Next, que pode ser usado para executar um bloco de código para cada elemento na coleção em vez de executar o bloco um determinado número de vezes.

Adicionando um loop For Each...Next

Na lição anterior, você adicionou manualmente os valores para a propriedade Position dos objetos Players na coleção de equipe para o controle ComboBox.Enquanto isso funcionou para o exemplo, não é a prática recomendada — sempre que você adicionou um novo jogador, você também precisou atualizar a coleção Items do controle ComboBox.

Uma maneira melhor de tratar isso seria adicionar os valores Position para a coleção Items pelo loop através da coleção team usando um loop For Each...Next.

Em um loop For...Next, primeiro você deve declarar uma variável de contador; com um loop For Each...Next, primeiro você deve declarar um variável de objeto.O código a seguir demonstra um loop For Each...Next.

Dim player As Persons.Players
For Each player In team
    ComboBox1.Items.Add(player.Position)
Next

Nesse caso, não importa quantos Players você tem, o método ComboBox1.Items.Add é executado uma vez para cada objeto Players na coleção da equipe e o valor Position é adicionado à lista.

Tente-o!

Para repetir uma coleção

  1. Abra o projeto Persons da lição anterior.Se você não o salvou, volte para Usando coleções para gerenciar vários objetos e conclua os procedimentos.

  2. No Solution Explorer, selecione o nó Form1.vb no projeto PlayerTest e em seguida, no menu View, escolha Designer.

  3. Selecione o controle ComboBox.Em seguida, na janela Properties, selecione a propriedade Items e clique no botão .

  4. No String Collection Editor, exclua as quatro entradas existentes e em seguida, clique em OK.

  5. Clique duas vezes no formulário para abrir o Editor de Código.

  6. No Editor de Códigos, adicione o seguinte à seção de declarações (abaixo da declaração de team).

    Dim player As Persons.Players
    For Each player In team
        ComboBox1.Items.Add(player.Position)
    Next
    
  7. Pressione F5 para executar a página.Selecione uma posição a partir da lista suspensa.O jogador para essa posição é exibido em uma caixa de mensagem.

Próximas etapas

Nesta lição, você usou um loop For Each...Next em uma coleção.Nas lições seguintes, você criará outro tipo de objeto — um controle de usuário.

Próxima Lesson: Objetos visíveis: Criando seu primeiro controle de usuário

Consulte também

Tarefas

Usando coleções para gerenciar vários objetos

Referência

For each... Avançar instrução (Visual Basic)

Outros recursos

Programação com objetos: Usando classes