A� vai:
A principio, evite chamar os metodos update e paint diretamente. Sempre
chame o metodo repaint.
Motivo?
� o seguinte: Se voc� chamar o metodo paint diretamente, ele ser� executado
no momento que voc� chamar. (O que pode significar muitas chamadas por
segundo). J� chamando o metodo repaint, a interface n�o ser� atualizada
instantaneamente, antes existe uma thread que monitora a GUI e faz chamadas
ao metodo paint de forma organizada. Mesmo que voc� fizer milhares de
chamadas ao metodo repaint em um segundo, a GUI s� ser� atualizada em m�dia
a cada 100 milisegundos (ou 10 vezes por segundo), o que suficiente para um
usu�rio captar as mudan�as.
Contudo ao quando esta thread for invocar o method repaint, antes ele
invocar� o methodo update. Este metodo apaga o que estiver desenhado na
tela, pintando todo o fundo da tela com a cor selecionada no metodo
setBackground (Color c) da classe component. Se esta n�o for a
funcionalidade que voc� deseja, ent�o sobrescreva o metodo update da
seguinte forma
public void update (Graphics g) {
paint (g);
}
Esta � a forma padr�o de manter desenhos antigos na tela , ao inv�s de
limpar a tela a cada chamada ao repaint.
Espero que isso lhe ajude. Qualquer d�vida adicional, � s� falar!
Ricardo Munhoz Santiago
-----Mensagem original-----
De: Marcelo de Paiva Guimaraes <[EMAIL PROTECTED]>
Para: [EMAIL PROTECTED] <[EMAIL PROTECTED]>
Data: Ter�a-feira, 29 de Junho de 1999 09:44
Assunto: d�vidas
Estou fazendo uma aplica��o que faz desenhos geom�tricos, s� que
quando estou fazendo uma linha por exemplo, os outro desenhos tremem,
qual � o problema ? Acho que o problema � no paint, update,repaint ou no
repaint, ent�o gostaria que algu�m explicasse quando devo us�-los.
Obrigado,
Marcelo Paiva
* Para nao receber mais e-mails da lista, acesse
<http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu e-mail,
escolha a lista <[EMAIL PROTECTED]> e de um <submit>.
* Para nao receber mais e-mails da lista, acesse
<http://www.sun.com.br:8080/guest/RemoteAvailableLists>, coloque seu e-mail, escolha a
lista <[EMAIL PROTECTED]> e de um <submit>.