Java

怎样用Java代码画出一个完美的正方形

小樊
82
2024-08-30 07:29:47
栏目: 编程语言

要使用Java代码绘制一个完美的正方形,你可以使用Java的图形库,例如AWT(Abstract Window Toolkit)或Swing

import javax.swing.*;
import java.awt.*;

public class SquareDrawer {
    public static void main(String[] args) {
        SwingUtilities.invokeLater(() -> {
            JFrame frame = new JFrame("Perfect Square Drawer");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.setSize(400, 400);
            frame.add(new SquarePanel());
            frame.setVisible(true);
        });
    }

    public static class SquarePanel extends JPanel {
        @Override
        protected void paintComponent(Graphics g) {
            super.paintComponent(g);
            int width = getWidth();
            int height = getHeight();
            int squareSize = Math.min(width, height);
            int x = (width - squareSize) / 2;
            int y = (height - squareSize) / 2;
            g.setColor(Color.BLUE);
            g.fillRect(x, y, squareSize, squareSize);
        }
    }
}

这段代码首先创建了一个名为SquareDrawer的类。在main方法中,我们使用SwingUtilities.invokeLater()来确保GUI的创建和更新在事件调度线程上执行。然后,我们创建一个JFrame对象,设置其默认关闭操作、大小并添加一个自定义的JPanel(名为SquarePanel)。最后,我们将窗口设置为可见。

SquarePanel类继承自JPanel,并重写了paintComponent方法。在这个方法中,我们首先调用super.paintComponent(g)来执行默认的绘制操作。接下来,我们获取面板的宽度和高度,并计算正方形的大小(取宽度和高度中的较小值)。然后,我们计算正方形的左上角坐标,使其居中于面板。最后,我们设置绘图颜色(此处为蓝色)并使用fillRect方法绘制正方形。

运行此代码后,你将看到一个包含一个蓝色正方形的窗口。你可以根据需要修改颜色、大小等属性。

0
看了该问题的人还看了