Para a execução de um metodo de que calcula o tempo

5 respostas
C

Alguém sabe me informar como parar a execução deste método, apos ter iniciado ele?

public void contaTempo(Boolean encerrar) {
        
        Double tempo;
        Double i = 1.0;
        do {
            
            try {
                System.out.println(i + " tempo");
                Thread.sleep(1000); // 1 segundo 
                                
            } catch (InterruptedException e) {
                JOptionPane.showMessageDialog(null, "Não foi possivel executar o tempo " + e);
            }
            
         tempo = i;
         i++;        
        } while (encerrar);
        
        tempo = tempo/60;
        
        JOptionPane.showMessageDialog(null, "tempo total: " + tempo);
        
    }

5 Respostas

AlexandreTLazaro

preste atenção

public void contaTempo(Boolean encerrar) {

q valor vc está passando para o parâmetro encerrar? true?

se for true, vc nunca vai parar este método…

vc vai ter que fazer um eskema também com a thread pra q ela fique monitorando se alguma tecla ou clique foi efetuado…

entendeu?

Giulliano

dentro do seu loop, alguma hora vc precisa dizer que o “encerrar” é igual a false, daí ele saí do loop.

C

AlexandreTLazaro:
preste atenção

public void contaTempo(Boolean encerrar) {

q valor vc está passando para o parâmetro encerrar? true?

se for true, vc nunca vai parar este método…

vc vai ter que fazer um eskema também com a thread pra q ela fique monitorando se alguma tecla ou clique foi efetuado…

entendeu?

Entendi, so não sei como fazer isso, você tem alguma dica?

C

Eu gostaria que o usuário por exemplo " ao clicar no botão encarrar " encera-se a execução do loop

algo como um cronometro, uma botão ativa e o outro encerra

Você sabe como posso fazer?

Giulliano

Do jeito que vc fez não vai rolar. É algo relativamente simples de se fazer, você só precisa pensar um pouco mais com lógica de programação

Criado 19 de março de 2013
Ultima resposta 20 de mar. de 2013
Respostas 5
Participantes 3