O problema aqui � o seguinte:

O m�todo void update(Graphics g) � implementado da seguinte maneira:

-> Primeiro LIMPA A TELA
-> Depois chama paint(g);

o que � horr�vel para anima��es. Numa anima��o voc� s� quer redesenhar a 
�rea que est� mudando e n�o todo o resto.

De um override no metodo update para ele n�o apagar a tela:

void update(Graphics g) { paint(g); }

e veja se as coisas melhoram.

No meu caso ajudou bastante.

[]'s

Sergio




>From: "Eduardo de S. Bernardino" <[EMAIL PROTECTED]>
>Reply-To: [EMAIL PROTECTED]
>To: <[EMAIL PROTECTED]>
>Subject: Re: [java-list] Anima��o em Java
>Date: Thu, 3 May 2001 12:09:40 -0300
>
>Para applets com AWT funciona que � uma beleza o m�todo que voc�
>especificou.
>S� n�o sei se este exemplo que voc� mostra funciona. No Swing n�o sei se
>funciona, mas tente sincronizar os m�todos com o synchronized, as vezes
>funciona.
>
>Eduardo
>
>----- Original Message -----
>From: "Sergio - InfoSa�de RS" <[EMAIL PROTECTED]>
>To: <[EMAIL PROTECTED]>
>Sent: Thursday, May 03, 2001 11:59 AM
>Subject: [java-list] Anima��o em Java
>
>
>Bom dia !!
>
>Gostaria de saber se algu�m de vcs j� implementou algum tipo de
>anima��o em java e se conseguiu resolver aquele problema da tremedeira da
>tela, por causa dos sucessivos repaint de tela. Tentei implementar uma
>t�cnica que v� em um livro mas n�o tive muito sucesso. Eles chamavam a
>t�cnica de buferriza��o dupla, que consiste nada mais nada menos que criar
>uma outra inst�ncia de Graphics e pintar todos os objetos nela e depois
>simplesmente pintar ao contexto da tua aplica��o aquela imagem criada em
>background. A id�ia me pareceu �tima, s� que quando implementei n�o
>funcionou, o programa compila normalmente s� que na hora da execu��o ele d�
>erro de null pointer assingment.  Algu�m sabe o que pode ser ???  Tem a ver
>com o exemplo ser implementado utilizando awt e extendendo applet, sendo 
>que
>eu estou usando swing e extendendo JFrame ???
>
>Segue abaixo as partes relevantes do c�digo da minha classe:
>
>import java.awt.*;
>import java.util.*;
>import java.awt.event.*;
>import javax.swing.*;
>
>class RaceThread extends JFrame implements ActionListener{
>
>JButton Inicia,Suspende,Para;
>JPanel Baixo, Placar;
>Bixo lebre, lebre2, lebre3, tart, tart2, tart3;
>
>private Bixo Lugares [];
>private int Posi [];
>Image offscreenImg;
>Graphics offscreen;
>private Image ImgBg =
>Toolkit.getDefaultToolkit().getImage("pista.jpg");
>
>public RaceThread(){
>
>super("Race Thread");
>
>offscreenImg = createImage(size().width, size().height);
>offscreen = offscreenImg.getGraphics();    //  a m�quina
>virtual acusa o erro nessa linha
>
>}
>
>
>public void paint(Graphics g){
>super.paint(g);
>int pos = 100;
>for(int i=0;i<15;i++){
>offscreen.drawImage(ImgBg,pos,22,this);    // No
>m�todo paint, todos os desenhos s�o feitos naquela inst�ncia de Graphics
>criada na contrutora
>pos+=54;
>}
>
>lebre.paint(offscreen);
>lebre2.paint(offscreen);
>lebre3.paint(offscreen);
>
>tart.paint(offscreen);
>tart2.paint(offscreen);
>tart3.paint(offscreen);
>
>g.drawImage(offscreenImg,0,0,this);   // Depois que tudo foi
>pintado a� sim chama-se o paint para exibir a tela criada
>
>
>}
>
>}
>
>------------------------------ LISTA SOUJAVA ----------------------------
>http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP
>d�vidas mais comuns: http://www.soujava.org.br/faq.htm
>regras da lista: http://www.soujava.org.br/regras.htm
>para sair da lista: envie email para [EMAIL PROTECTED]
>-------------------------------------------------------------------------
>
>
>
>
>------------------------------ LISTA SOUJAVA ----------------------------
>http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP
>d�vidas mais comuns: http://www.soujava.org.br/faq.htm
>regras da lista: http://www.soujava.org.br/regras.htm
>para sair da lista: envie email para [EMAIL PROTECTED]
>-------------------------------------------------------------------------
>

_________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com.


------------------------------ LISTA SOUJAVA ---------------------------- 
http://www.soujava.org.br  -  Sociedade de Usu�rios Java da Sucesu-SP 
d�vidas mais comuns: http://www.soujava.org.br/faq.htm
regras da lista: http://www.soujava.org.br/regras.htm
para sair da lista: envie email para [EMAIL PROTECTED] 
-------------------------------------------------------------------------

Responder a