java用new的方式在jpanel上画9个圆
时间: 2024-05-09 16:22:05 浏览: 62
可以使用Java中的Swing组件JPanel和Graphics2D类来在JPanel上绘制9个圆。具体步骤如下:
1. 创建一个JPanel对象,并且覆盖其paintComponent方法。
2. 在paintComponent方法中,获取Graphics2D对象,设置绘制颜色和线条粗细等属性。
3. 使用for循环绘制9个圆,可以通过设置圆的坐标和半径来控制它们的位置和大小。
下面是一个示例代码:
```java
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class CirclePanel extends JPanel {
private static final int CIRCLE_COUNT = 9;
private static final int CIRCLE_RADIUS = 30;
private static final int CIRCLE_PADDING = 10;
private static final int PANEL_WIDTH = 300;
private static final int PANEL_HEIGHT = 300;
public CirclePanel() {
super();
this.setBackground(Color.WHITE);
}
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Graphics2D g2d = (Graphics2D) g;
g2d.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g2d.setColor(Color.BLUE);
for (int i = 0; i < CIRCLE_COUNT; i++) {
int x = CIRCLE_PADDING + (i % 3) * (CIRCLE_PADDING + 2 * CIRCLE_RADIUS);
int y = CIRCLE_PADDING + (i / 3) * (CIRCLE_PADDING + 2 * CIRCLE_RADIUS);
g2d.drawOval(x, y, CIRCLE_RADIUS * 2, CIRCLE_RADIUS * 2);
}
}
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setSize(PANEL_WIDTH, PANEL_HEIGHT);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(new CirclePanel());
frame.setVisible(true);
}
}
```
运行代码,会在一个300x300的窗口中绘制出9个蓝色圆。
阅读全文