JAVA 重绘的问题

来源:百度知道 编辑:UC知道 时间:2024/07/04 14:29:41
请教一段代码。
要求的是绘制2个圆 一个大圆套个小圆,小圆要不停的在大圆中由小变大由大变小

int x1 = 50, y1 = 50, r1 = 100;
int r2 = 20;
boolean flag = true;
public void paint(Graphics g){
g.setColor(Color.blue);
g.fillArc(x1, y1, r1, r1, 0, 360);

g.setColor(Color.red);
g.fillArc(x1 + (r1 - r2) / 2, y1 + (r1 - r2) / 2, r2, r2, 0, 360);

if (r2 >= 60) {
flag = false;
}
else if (r2 < 20) {
flag = true;
}

if (flag) {
r2 += 2;
}
else {
r2 -= 2;
}
}

看你想用什么做了,要是Applet简单点,要是Swing就得用dwarOval了,在while(true){}里面画两个并且在里面判断小圆半径不断的重画就可以了