Você deveria chamar o método repaint através de outro método, talvez assim (código pouco elaborado e sem revisão):
public class suaClasse extends Canvas implements Runnable { public void run() { > try { // Espero meio segundo > Thread.sleep(500); > } catch (InterruptedException e) { > e.printStackTrace(); > } > pos=pos+1; // Troco a substring dando a impressao > // de um texto que rola... > if(pos>fim-61) > { > pos=1; > } > repaint(); > } } public void paint() { // seu código sem o trecho que agora está no run } } Espero que ajude. []'s Emerson At 13:56 26/11/2001, Fabio Oliveira wrote: >Pessoal: > >Sou leigo em Java e estou precisando implementar uma pequena animação de >texto sobrepondo uma figura JPG sem aquele horrivel efeito piscante. >Eu tentei criar o velho esquema de double_buffering, mas mesmo assim >continua piscando, não consigo entender. >Toda vez que é chamado o método repaint a imagem do fundo entra lentamente >(é um JPG de 640x480) no meu micro (Celeron 450). >O que eu estou fazendo de errado ? >Agradeço a atenção de todos. >Fábio. > >Método Paint > > public void paint(Graphics g) { > if(privez==1) // Na primeira vez eu crio o contexto gráfico > { > privez=0; > // Cria buffer > buffer = createImage(640, 480); > // obtem e prepara contexto grafico associado > gContexto = buffer.getGraphics(); > gContexto.setColor(Color.black); > gContexto.fillRect(0, 0, 640, 480); > gContexto.drawImage(logo,0,0,this); // Jpg 640x480 > } > > gContexto.setColor(Color.black); > gContexto.fillRect(0, 0, 640, 480); > gContexto.drawImage(logo,0,0,this); > String frase=""; > frase=instru.substring(pos,pos+60); > gContexto.setFont(new Font("Serif",Font.BOLD,40)); > gContexto.setColor(Color.blue); > gContexto.drawString(frase,10,440); > g.drawImage(buffer, getInsets().left, getInsets().top, this); > try { // Espero meio segundo > Thread.sleep(500); > } catch (InterruptedException e) { > e.printStackTrace(); > } > pos=pos+1; // Troco a substring dando a impressao > // de um texto que rola... > if(pos>fim-61) > { > pos=1; > } > repaint(); > } > } > ------------------------------ 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] -------------------------------------------------------------------------