Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Nesta série de quatro tutoriais, você criará um teste de matemática. O teste contém quatro problemas matemáticos aleatórios que um participante do teste tenta responder dentro de um tempo especificado.
Este tutorial mostra como aprimorar o teste desmarcando valores padrão e personalizando a aparência dos controles.
Neste tutorial final, você aprenderá a:
- Adicione manipuladores de eventos para limpar os valores de controle NumericUpDown padrão.
- Personalize o teste.
Pré-requisitos
Este tutorial se baseia em tutoriais anteriores, começando com Criar um aplicativo WinForms de teste de matemática. Se você ainda não concluiu esses tutoriais, passe por eles primeiro.
Adicionar manipuladores de eventos para os controles NumericUpDown
O teste contém os controles NumericUpDown que os participantes do teste usam para inserir números. Ao inserir uma resposta, você precisa selecionar o valor padrão primeiro ou excluir esse valor manualmente. Ao adicionar um manipulador de eventos Enter, você pode facilitar a inserção de respostas. Esse código seleciona e limpa o valor atual em cada controle NumericUpDown assim que o participante do teste o seleciona e começa a inserir um valor diferente.
Selecione o primeiro controle NumericUpDown no formulário. Na caixa de diálogo Propriedades, selecione o ícone Eventos na barra de ferramentas.
A guia Eventos no Properties exibe todos os eventos aos quais você pode responder pelo item selecionado no formulário. Nesse caso, todos os eventos listados pertencem ao controle NumericUpDown.
Selecione o evento Enter, insira answer_Entere selecione Enter.
O editor de código aparece exibindo o manipulador de eventos Enter que você criou para o controle NumericUpDown de soma.
No método para o manipulador de eventos answer_Enter, adicione o seguinte código:
Neste código:
- A primeira linha declara o método. Ele inclui um parâmetro chamado
sender
. Em C#, o parâmetro éobject sender
. No Visual Basic, ésender As System.Object
. Este parâmetro refere-se ao objeto cujo evento é acionando, que é conhecido como o remetente. Nesse caso, o objeto remetente é o controle NumericUpDown. - A primeira linha dentro do método converte o remetente de um objeto genérico em um controle NumericUpDown. Essa linha também atribui o nome answerBox ao controle NumericUpDown. Todos os controles NumericUpDown no formulário usarão esse método, não apenas o controle do problema de adição.
- A próxima linha verifica se answerBox foi convertido com êxito em um controle NumericUpDown.
- A primeira linha dentro da instrução
if
determina o comprimento da resposta que está atualmente no controle NumericUpDown. - A segunda linha dentro da instrução
if
usa o comprimento da resposta para selecionar o valor atual no controle.
Quando o participante do teste seleciona o controle, o Visual Studio aciona esse evento. Esse código seleciona a resposta atual. Assim que o participante do teste começar a inserir uma resposta diferente, a resposta atual será apagada e substituída pela nova resposta.
No Designer de Formulários do Windows, selecione o controle NumericUpDown do problema de adição novamente.
Na página Eventos da caixa de diálogo Propriedades, localize o evento Clique e selecione answer_Enter no menu suspenso. Esse manipulador de eventos é aquele que você acabou de adicionar.
No Designer de Formulários do Windows, selecione o controle NumericUpDown do problema de subtração.
Na página Eventos da caixa de diálogo Propriedades, localize o evento Enter e selecione answer_Enter no menu suspenso. Esse manipulador de eventos é aquele que você acabou de adicionar. Repita esta etapa para o evento Clique.
Repita as duas etapas anteriores para os controles NumericUpDown de multiplicação e divisão.
Executar seu aplicativo
Salve seu programa e execute-o.
Inicie um teste e selecione um controle NumericUpDown. O valor existente é selecionado automaticamente e desmarcado quando você começa a inserir um valor diferente.
Personalizar seu teste
Nesta última parte do tutorial, você explorará algumas maneiras de personalizar o teste e expandir o que aprendeu.
Alterar a cor de um rótulo
Use a propriedade BackColor do controle timeLabel para tornar esse rótulo vermelho quando restarem apenas mais cinco segundos em um teste.
Redefina a cor quando o teste terminar.
Reproduzir um som para a resposta correta
Dê ao comprador de teste uma dica executando um som quando a resposta correta for inserida em um controle NumericUpDown. Para implementar essa funcionalidade, escreva um manipulador de eventos para o evento ValueChanged de cada controle. Esse tipo de evento é acionado sempre que um participante do teste altera o valor do controle.
Próximas etapas
Parabéns! Você terminou esta série de tutoriais. Você concluiu essas tarefas de programação e design no IDE do Visual Studio:
- Criou um projeto do Visual Studio que usa o Windows Forms
- Adicionou rótulos, um botão e controles NumericUpDown
- Adicionado um temporizador
- Configurar manipuladores de eventos para seus controles
- Código C# ou Visual Basic gravado para lidar com os eventos
Continue aprendendo com outra série de tutoriais sobre como criar um jogo correspondente.