Problemas com exibição de Frame

1 resposta
W

Num Frame quando clica no botão TESTE executa o metodo Copiar abaixo:

public void Copiar (){
try {

process = null;
            process = Runtime.getRuntime().getRuntime()
            .exec("\\copiar.bat");

            BufferedReader in =
            new BufferedReader(new InputStreamReader(process.getInputStream()));

             while ((line = in.readLine()) != null) {
                 saidaTexto.append("Aguarde copiando arquivo:   " + line + newline +
                 newline + newline);
                 saidaCompleta += line ;
                 
            }
          }catch (Exception e) {
         System.out.println("Problema na copia: " +e.toString());
        }
          JOptionPane.showMessageDialog(null, "Copia finalizada", " OK PARA SAIR",
         JOptionPane.INFORMATION_MESSAGE );

         frame.dispose();

}

Enquanto está executando o método Copiar, se for minimizado a tela, quando maximiza a tela volta a exibir a tela do Frame sem o botao TESTE e sem o texto, o Frame fica inteiro branco, só voltando ao normal após terminar de executaro método.

ALGUÉM SABE COMO CORRIGIR ESTE PROBLEMA?

1 Resposta

_Renatu

hm…

pra voce resolver esse problema vai ter q trabalhar com threads…
tem uma classe da sun que chama SwingWorker…
serve exatamente pra fazer esse tipo de coisa…
trabalhar com swing e threads de maneira mais facil…

nesse link aqui tem mais informacoes:

http://java.sun.com/docs/books/tutorial/uiswing/misc/threads.html

Criado 24 de julho de 2005
Ultima resposta 24 de jul. de 2005
Respostas 1
Participantes 2