编写 Applet(大小 140*60),其背景色为蓝色,画一个长方形(其填充色 为 pink,各边离边小于 10 像素)和一个在填充的长方形中左右移动的 小球(半径 15) 。
时间: 2023-11-28 09:49:45 浏览: 90
第二次java作业
以下是Java Applet的代码实现:
```java
import java.awt.*;
import java.applet.*;
public class MyBallApplet extends Applet implements Runnable {
int x = 20;
int y = 20;
int r = 15;
Thread thread;
public void init() {
setBackground(Color.BLUE);
thread = new Thread(this);
thread.start();
}
public void run() {
while (true) {
try {
Thread.sleep(50);
} catch (InterruptedException e) {
e.printStackTrace();
}
x += 5;
if (x > getWidth() - r) {
x = r;
}
repaint();
}
}
public void paint(Graphics g) {
g.setColor(Color.PINK);
g.fillRect(10, 10, getWidth() - 20, getHeight() - 20);
g.setColor(Color.WHITE);
g.fillOval(x - r, y - r, r * 2, r * 2);
}
}
```
在这个程序中,我们继承了Java的Applet类,并实现了Runnable接口以便在后台线程中运行小球的动画。在init方法中,我们设置了背景色为蓝色,并启动了线程。在run方法中,我们用一个while循环来控制小球的移动,并通过repaint方法来不断地重绘小球的位置。在paint方法中,我们首先用fillRect方法画了一个填充色为pink的长方形,然后用fillOval方法画了一个半径为r的小球,并根据x和y的值来控制小球的位置。
阅读全文