Etapa 4: Adicionar um manipulador de evento Click para cada etiqueta
O jogo correspondente funciona da seguinte maneira:
Quando um jogador clica em um dos quadrados com um ícone oculto, o programa mostra o ícone do Player, alterando a cor do ícone para preto.
Em seguida, o player clica outro ícone oculto.
Se coincidir com os ícones, eles permanecerão visíveis.Caso contrário, ambos os ícones são ocultados novamente.
Para obter o seu programa para funcionar dessa forma, você pode adicionar um manipulador de eventos Click que altera a cor do rótulo que é clicado.
Para adicionar um manipulador de eventos Click cada etiqueta.
Vá para o Windows Forms Designer e clique no primeiro rótulo o controle para selecioná-lo.Em seguida, mantenha pressionada a tecla CTRL enquanto clica em cada uma das outras etiquetas para selecioná-los.Certifique-se de que cada etiqueta está selecionada.
Em seguida, vá para o eventos página o Propriedades janela.Role para baixo até o evento Click e digite label_Click na caixa, conforme mostrado na figura a seguir.
Janela de propriedades mostrando evento Click
Pressione ENTER.O IDE adiciona um manipulador de eventos Click chamado label_Click() o código e conecta-lo a cada um dos rótulos.
Preencha o restante do código, da seguinte maneira:
''' <summary> ''' Every label's Click event is handled by this event handler ''' </summary> ''' <param name="sender">The label that was clicked</param> ''' <param name="e"></param> ''' <remarks></remarks> Private Sub label_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label9.Click, Label8.Click, Label7.Click, Label6.Click, Label5.Click, Label4.Click, Label3.Click, Label2.Click, Label16.Click, Label15.Click, Label14.Click, Label13.Click, Label12.Click, Label11.Click, Label10.Click, Label1.Click Dim clickedLabel = TryCast(sender, Label) If clickedLabel IsNot Nothing Then ' If the clicked label is black, the player clicked ' an icon that's already been revealed -- ' ignore the click If clickedLabel.ForeColor = Color.Black Then Exit Sub clickedLabel.ForeColor = Color.Black End If End Sub
/// <summary> /// Every label's Click event is handled by this event handler /// </summary> /// <param name="sender">The label that was clicked</param> /// <param name="e"></param> private void label_Click(object sender, EventArgs e) { Label clickedLabel = sender as Label; if (clickedLabel != null) { // If the clicked label is black, the player clicked // an icon that's already been revealed -- // ignore the click if (clickedLabel.ForeColor == Color.Black) return; clickedLabel.ForeColor = Color.Black; } }
Observação Você pode reconhecer object sender na parte superior do manipulador de eventos de criar um tutorial de teste de matemática.Você pendurado diferentes rótulo controlar clique eventos para um método de manipulador de eventos único, para que o mesmo método é chamado não importa que identificam o usuário clica.O método precisa saber qual rótulo foi clicado, portanto ele utiliza o nome remetente para que rótulo controle.A primeira linha do método diz ao programa que não é apenas um objeto, mas especificamente uma rótulo controle e que ele usa o nome clickedLabel para acessar suas propriedades e métodos.
Esse método primeiro verifica se clickedLabel foi convertido com êxito (convertido) de um objeto em um controle Label.Se não houver êxito, ele tem um valor nulo (C#) ou nada (Visual Basic) e você não deseja executar o restante do código no método.Em seguida, o método verifica o texto do rótulo clicado cores usando o ForeColor propriedade.Se já for preto, o ícone do foi clicado, portanto, o método é feito.(É o que faz a instrução return: ele diz ao programa pare de executar o método.) Se ainda não foi clicado no ícone, ele altera sua cor de texto em preto.
Salve e execute o programa.Você deverá ver um formulário vazio com um fundo azul.Clique no formulário e um dos ícones fiquem visível.Continue clicando em locais diferentes no formulário.Ao clicar nos ícones, eles devem aparecer.
Para continuar ou revisar
Para ir para a próxima etapa do tutorial, consulte Etapa 5: Adicionar referências de rótulo.
Para retornar para a etapa anterior do tutorial, consulte Etapa 3: Atribuir a um ícone aleatório a cada etiqueta.