你这是帮我写了个圆呀,我让你帮我写心型的跳动效果的java代码
时间: 2024-04-30 22:23:20 浏览: 13
好的,以下是一个简单的心型跳动效果的Java代码示例:
```java
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.Timer;
public class HeartBeat extends JPanel implements ActionListener {
private static final long serialVersionUID = 1L;
private int diameter = 20;
private int maxDiameter = 100;
private int delay = 10;
private Timer timer;
public HeartBeat() {
timer = new Timer(delay, this);
timer.setInitialDelay(0);
timer.start();
}
public void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2d.setColor(Color.RED);
g2d.fillOval(getWidth() / 2 - diameter / 2, getHeight() / 2 - diameter / 2, diameter, diameter);
}
public void actionPerformed(ActionEvent e) {
if (diameter < maxDiameter) {
diameter++;
} else {
diameter = 20;
}
repaint();
}
public static void main(String[] args) {
JFrame frame = new JFrame("HeartBeat");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300, 300);
frame.setLocationRelativeTo(null);
frame.setResizable(false);
frame.add(new HeartBeat());
frame.setVisible(true);
}
}
```
这段代码创建了一个继承自JPanel的HeartBeat类,实现了ActionListener接口并重写了paintComponent和actionPerformed方法。在paintComponent方法中,使用Graphics2D对象绘制一个红色圆形,而在actionPerformed方法中,通过改变圆形的直径大小来实现心跳的跳动效果。最后,在main方法中创建一个JFrame窗口,并将HeartBeat对象添加到其中,以显示出心跳效果。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)