Pessoal, essa é uma animação de uma bolinha descendo e indo pra direita em um JFrame… Por curiosidade, quis trocar a cor da bolinha quando ela estivesse na metade da descida… mas nao funcionou… a bolinha continua da mesma cor… alguem poderia dar uma olhadinha no que eu estou errando?
vai aí o código:
package cap12;
import javax.swing.*;
import java.awt.*;
public class SimpleAnimation {
int x=70;
int y=70;
public static void main(String[] xuxu){
SimpleAnimation gui = new SimpleAnimation();
gui.go();
}
public void go(){
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
MyDrawPanel drawpanel = new MyDrawPanel();
frame.getContentPane().add(drawpanel);
frame.setSize(300,300);
frame.setVisible(true);
for(int i=0; i<130;i++){
x++;
y++;
drawpanel.repaint();
try{
Thread.sleep(50);
}catch(Exception ex){}
}
}
class MyDrawPanel extends JPanel{
public void paintComponent(Graphics g){
g.setColor(Color.white);
g.fillRect(0, 0, this.getWidth(), this.getHeight());
//aqui começa minha modificacao:
if(x<=65){
g.setColor(Color.green);
g.fillOval(x, y, 40, 40);
}else{
g.setColor(Color.red);
g.fillOval(x, y, 40, 40);}
}
}
}