模拟小球碰撞后返回

package result;
//模拟小球碰撞
import java.awt.Color;
import java.awt.Graphics;

import javax.swing.*;

public class F11 extends JFrame {
Boo boo = new Boo();
public F11() {
super("小球反弹");
setSize(1000,800);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
add(boo);
Thread thread = new Thread(boo);
thread.start();
validate();
}
public static void main(String[] args) {
new F11();
}
}

class Boo extends JPanel implements Runnable{
//小球
int x=255,y=0;
int flyx=1,flyy=1;
// Color aColor = new Color(x,y,0);
public void paint(Graphics g)
{
g.clearRect(0, 0, 1000, 900);
g.setColor(Color.red);
g.fillOval(x,y, 80, 80);

if (flyx==1) {
x++;
}
if(flyx ==2) {
x--;
}
if(flyy==1) {
y++;
}
if(flyy==2) {
y--;
}
if(x>900) {
flyx=2;
}
if(x<0) {
flyx=1;
}
if(y<0) {
flyy=1;
}
if(y>600) {
flyy=2;
}
}
public void run()
{
while(true)
{
repaint();

try {
Thread.sleep(10);
} catch (InterruptedException e) {
// TODO: handle exception
}
}
}

}

 

原文地址:https://www.cnblogs.com/nanfengnan/p/13739287.html