Ir ao conteúdo
  • Cadastre-se
caezar

RESOLVIDO Animação java

Recommended Posts

Olá pessoal, aqui estou mais uma vez!

Pessoal estou aprendendo um pouco mais sobre GUI e estou tentando fazer uma animação simples.
Segue o código:

public class SimpleAnimation {int x =0;int y = 0;public static void main(String[] args) {SimpleAnimation animation = new SimpleAnimation();animation.go();}public void go(){JFrame janela = new JFrame("Animação");janela.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);MyDrawPanel dp = new MyDrawPanel();janela.add(dp);janela.setSize(300, 300);janela.setVisible(true);for(int i=0;i<500;i++){x++;y++;dp.repaint();try {Thread.sleep(50);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}}}class MyDrawPanel extends JPanel{public void paintComponent(Graphics g) {g.setColor(Color.white);g.fillRect(0, 0, this.getWidth(), this.getHeight());int red = (int) Math.random()*255;int green = (int) Math.random()*255;int blue = (int) Math.random()*255;Color cor = new Color(red, green, blue);g.setColor(cor);g.fillOval(x, y, 40, 40);}}}

Tudo funciona com exceção da mudança de cor. Porque a cor não se altera como a posição?

Obrigado mais uma vez!

Compartilhar este post


Link para o post
Compartilhar em outros sites

PROBLEMA
Math.int() convertido imediatamente em valor inteiro ou longo;
VEJA:

int red = (int) Math.random() * 255;

 
MUDE:

int red = (int) (Math.random() * 255);

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×