JFrame com contador regressivo

5 respostas
M

Bom pessoal , to com um probema …
Tenho uma Jframe ja criada (“Um”) e uma segunda tbm ja criada ("Dois)…
Na Jframe Um , tem um botão de Ok , que ao ser clicado altomaticamente a Jframe Um é fechada e a Dois e aberta …
Ai está o problema …
Ao ser aberta preciso criar tipo um contador regressivo para ela (10 s) … que ao zerar irá desabilitar o grupo de botoes existente nessa Jframe
Me ajudem ´por favor e desde ja agradeço … :smiley:

Brigadão

5 Respostas

M

E ai miixmr, tudo certo?

Olha não sei como suas classes estão organizadas mas tente algo parecido com isso:

public SuaClasse {

    JLabel label = new JLabel(); //rotulo que exibira a contagem regressiva no JFrame
    Integer contador = 10;//contador que sera exibido no JLabel
    
    public void metodoQueCriaFrameDois() {
       
        //sua lógica que cria o Frame Dois com todos os seus componentes

        
        Runnable runnable = new Runnable() {
            @Override
            public void run() {
                try {
                    while (contador >= 0) {//repete ate que contador seja menor ou igual a zero
                        label.setText(contador.toString());
                        Thread.sleep(1000);//espera 1 segundo
                        contador--;
                    }
                } catch (InterruptedException exception) {
                    exception.printStackTrace();
                }
            }
        };

        
        Thread thread = new Thread(runnable);// cria uma nova Thread
        thread.start();//executa a thread que a cada segundo vai atualizar o valor do JLabel

        //sua lógica que desabilita o grupo de botões depois de 10 segundos.
    }

}

Té mais.

M

olha só …
Nao Precisa aparecer o contador numa Jlabel …
O meu programa é um questionario :
1 - Tem uma 1ª Frame onde explica que o usuario tem o tempo p/responder , e um botão OK
2 - Ao clicar esse botão OK aparece a 2ª Frame com as alternativas em uma combobox que devera ser desabilitada em 10 segundos (por exemplo) e essa Frame devera ser fechada e sera aberta uma outra Frame

Tentei fezer igual ao M@C mas não consegui …

M

E ai miixmr, mas o que exatamente deu errado?

Valeu.

M

Da erro na hora da compilação …
Nao ta executando os comandos … tipo nao ta funcionando o contador !

M

Você pode postar o código?

Té.

Criado 17 de julho de 2012
Ultima resposta 17 de jul. de 2012
Respostas 5
Participantes 2