Ajustar Thread para receber os dados em jTextArea

8 respostas
P

Pessoal tenho duas classes uma que é a tela para o usuário e a outra que lê uma porta serial e joga os dados lidos em um jTextArea da classe que gera a tela. Tudo funciona bem, o único problema é que os dados só são exibidos no jTextArea depois da finalização do processo de leitura, mas eu preciso que os dados fossem sendo inseridos conforme fossem sendo lidos, e não todas as linhas de uma vez no final da execução da classe de leitura.
Isso pode ser por causa das Threads? Tem como contornar esse problema?

8 Respostas

marciocamurati

Você vai precisar utilizar o flush para ir “liberando” as mensagens conforme o aplicativo for recebendo.

[]s

P

Cara desculpe a ignorancia, mas como é a sintaxe desse flush…???

Não consegui localizar aqui.

P

Tenho um método para saida e um metodo para a entrada de dados.
No método de saida eu consigo fazer assim:

saida.flush();

Porém no método de entrada que vai efetivamente controlar esse recebimento eu não consigo fazer um

entrada.flush();

P.S.: saida é um OutputStream e entrada é um ImputStream.

Grinvon

Existem tambem o invokeLater e o invokeWait

P

Pessoal valeu mesmo pela ajuda, mas deu uma iluminação aqui :lol: e criei um método para controlar o run() da Thread e dentro do método de leitura eu chamo ele.

Agora está funcionando legal.

F

Petter
Voce pode detalhar um pouco mais como voce fez, porque comigo acontece igual, as mensagens sao jogadas no jtextArea só no final do processo de leitura.

F

Petter
Já me deu uma luz aqui também, agora tá beleza este problema…

D

petter

olha eu to com um problema parecido com o seu , sera que tinha como vc me passar a parte do código onde vc controla essa Thread , ficarei grato
vlw!!

Criado 31 de agosto de 2006
Ultima resposta 21 de out. de 2006
Respostas 8
Participantes 5