用java swing,在画布上画一个红色的点
时间: 2024-02-25 15:51:58 浏览: 16
好的,以下是实现该需求的Java代码:
```java
import javax.swing.*;
import java.awt.*;
public class DrawPointDemo extends JFrame {
public DrawPointDemo() {
setTitle("Draw Point Demo");
setSize(400, 400);
setLocationRelativeTo(null);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setContentPane(new DrawPointPanel());
}
public static void main(String[] args) {
new DrawPointDemo().setVisible(true);
}
}
class DrawPointPanel extends JPanel {
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.RED);
g.fillOval(getWidth() / 2 - 5, getHeight() / 2 - 5, 10, 10);
}
}
```
这段代码创建了一个继承自 `JFrame` 的窗口类 `DrawPointDemo`,并在其中添加了一个继承自 `JPanel` 的画布类 `DrawPointPanel`。在 `DrawPointPanel` 中,我们重写了 `paintComponent` 方法,在其中调用 `Graphics` 对象的 `setColor` 方法设置颜色为红色,并调用 `fillOval` 方法画一个实心的圆形,圆形的坐标为画布中心,大小为 10 x 10。需要注意的是,我们使用了 `fillOval` 方法而不是 `drawOval` 方法,这样才能画出实心的圆形。
你可以将这段代码复制到一个 Java 项目中并运行,就可以看到画布上画了一个红色的点。