Java画布按键选择圆形个数个数画出圆形
时间: 2024-01-26 12:04:38 浏览: 20
以下是一个简单的 Java 代码示例,用于创建一个画布,并允许用户通过按键选择要绘制的圆的数量:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class CircleDrawer extends JFrame implements KeyListener {
private static final int WIDTH = 500;
private static final int HEIGHT = 500;
private int numCircles = 1;
public CircleDrawer() {
setSize(WIDTH, HEIGHT);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
addKeyListener(this);
}
public void paint(Graphics g) {
super.paint(g);
int centerX = WIDTH / 2;
int centerY = HEIGHT / 2;
int radius = 50;
for (int i = 0; i < numCircles; i++) {
g.drawOval(centerX - radius, centerY - radius, radius * 2, radius * 2);
radius += 50;
}
}
public static void main(String[] args) {
CircleDrawer circleDrawer = new CircleDrawer();
circleDrawer.setVisible(true);
}
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_UP) {
numCircles++;
repaint();
} else if (e.getKeyCode() == KeyEvent.VK_DOWN) {
if (numCircles > 1) {
numCircles--;
repaint();
}
}
}
@Override
public void keyReleased(KeyEvent e) {
// Do nothing
}
@Override
public void keyTyped(KeyEvent e) {
// Do nothing
}
}
```
该程序创建了一个 JFrame,其中包含一个画布和一个 numCircles 变量,该变量表示要绘制的圆的数量。使用上下箭头键可以增加或减少圆的数量,并通过 paint() 方法在画布上绘制圆。