Bom dia! Sou iniciante em java, baixei o netbeans 6 e estou tentando fazer um software que faça o sorteio de números seqüênciais. Por exemplo: Tenho 10 exercícios para serem sorteados entre os alunos, sendo que dois ou mais alunos poderão fazer o mesmo exercício. Quero um software que conte de 1 a 10 indefinidamente e, quando um aluno clicar no botão, o software vai mostrar exatamente o número que estava na variável no momento do clique.
Para isto, criei um formulário com:
- Um jTextField onde vou entrar com a quantidade de exercícios existentes.
- Um jLabel onde os números deveriam aparecer (como se fosse um mostrador).
- E um jButton que serve para acionar e parar o contador.
No evento “jButton1ActionPerformed”, coloquei o seguinte código:
// Flag <- variável boolean da classe com valor inicial "false";
// Cont e C <- variáveis int da classe com valores iniciais "0" e "1" respectivamente;
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
Flag = !Flag;
if (! jTextField1.getText().isEmpty()){
while (Flag){
C++;
if (C > 32760)
C = 1;
Cont = C % Integer.valueOf(jTextField1.getText());
jLabel2.setText(String.valueOf(Cont + 1));
}
}
}
Achei que daria certo mas, o software entra em lupe infinito (até aqui tudo bem, esta era a idéia). Mas, o mostrador (jLabel2) não está sendo atualizado e o botão (jButton1), uma vez apertado para iniciar o contador (passando o valor da variável Flag para “true”), não volta ao normal. Ou seja, ele fica sempre apertado, não volta para que eu possa aperta-lo novamente e passar o valor da variável Flag para “false”, com o intuito de parar o contador.
Se alguém puder me ajudar, ficarei muito agradecido!