溫馨提示×

怎樣用Java代碼畫出一個(gè)完美的正方形

小樊
90
2024-08-30 07:29:47
欄目: 編程語言

要使用Java代碼繪制一個(gè)完美的正方形,你可以使用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);
        }
    }
}

這段代碼首先創(chuàng)建了一個(gè)名為SquareDrawer的類。在main方法中,我們使用SwingUtilities.invokeLater()來確保GUI的創(chuàng)建和更新在事件調(diào)度線程上執(zhí)行。然后,我們創(chuàng)建一個(gè)JFrame對象,設(shè)置其默認(rèn)關(guān)閉操作、大小并添加一個(gè)自定義的JPanel(名為SquarePanel)。最后,我們將窗口設(shè)置為可見。

SquarePanel類繼承自JPanel,并重寫了paintComponent方法。在這個(gè)方法中,我們首先調(diào)用super.paintComponent(g)來執(zhí)行默認(rèn)的繪制操作。接下來,我們獲取面板的寬度和高度,并計(jì)算正方形的大?。ㄈ挾群透叨戎械妮^小值)。然后,我們計(jì)算正方形的左上角坐標(biāo),使其居中于面板。最后,我們設(shè)置繪圖顏色(此處為藍(lán)色)并使用fillRect方法繪制正方形。

運(yùn)行此代碼后,你將看到一個(gè)包含一個(gè)藍(lán)色正方形的窗口。你可以根據(jù)需要修改顏色、大小等屬性。

0