目前,当点击一个按钮时,该圆圈将在g.fillOval(getWidth()/2 - 50, getHeight()/2 - 50, radius, radius);
我在这里:
private class DrawPanel extends JPanel {
private int radius;
@Override
public void paintComponent(Graphics g) {
super.paintComponent(g);
g.fillOval(getWidth()/2 - 50, getHeight()/2 - 50, radius, radius);
}
答案 0 :(得分:1)
你的问题不是很清楚,你发布的代码太多了,所以让我概括一下。
当您使用Graphics#fillOval
绘制圆圈时,如果椭圆形刻入方形的左上角,则为参考点。
因此,如果您想使用中心作为参考,给定半径r,您应该绘制:
(xCenter - r, yCenter - r, r*2, r*2)
此外,由于它是一个圆圈,请考虑使用带有Antialising的Graphics2D
。
这里是文档:
https://docs.oracle.com/javase/tutorial/2d/advanced/quality.html