在 Java 中繪製一個二維矩形

Sheeraz Gul 2021年10月2日
在 Java 中繪製一個二維矩形

我們將在本文中學習如何在 Java 中繪製二維矩形。

Java 允許我們使用 Graphics 類繪製二維物件。圖形類是 AWT 的一部分。Java 中的 AWT 是一個應用程式程式設計介面,用於建立圖形使用者介面。

由於我們想要繪製一個二維矩形,我們只需要從 AWT 包中匯入 DimensionGraphics 類。我們還將匯入 javax.swing 類,它允許我們使用 JPanelJPanel 是一個容器,用於儲存一組元件,用於組織各種佈局。它顯示最終輸出。

請參考以下程式碼。

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

public class Rectangle extends JPanel {
    private static final int RCT_X = 20;
    private static final int RCT_Y = RCT_X;
    private static final int RCT_WIDTH = 100;
    private static final int RCT_HEIGHT = RCT_WIDTH;

    @Override
    protected void paint_Component(Graphics g) {
        super.paint_Component(g);
        // draw the rectangle here
        g.drawRct(RCT_X, RCT_Y, RCT_WIDTH, RCT_HEIGHT);
    }

    @Override
    public Dimension get_Preferred_Size() {
        // so that our GUI is big enough
        return new Dimension(RCT_WIDTH + 2 * RCT_X, RCT_HEIGHT + 2 * RCT_Y);
    }

    // create the GUI explicitly on the Swing event thread
    private static void create_And_Show_Gui() {
        Rectangle mainPanel = new Rectangle();

        JFrame frame = new JFrame("Rectangle");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.getContentPane().add(mainPanel);
        frame.pack();
        frame.setLocationByPlatform(true);
        frame.setVisible(true);
    }
    public static void main(String[] args) {
        create_and_Show_Gui();
    }
}

輸出:

在 java 中繪製矩形

在上面的程式碼中,我們可以看到我們的二維矩形顯示在 JPanel 中。Rectangle 類擴充套件為 JPanel。這裡我們已經初始化了矩形的長和寬。paint_component() 方法繪製矩形。create_And_Show_Gui() 方法用於建立 GUI 並設定列印最終輸出的顯示框架。

Author: Sheeraz Gul
Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

相關文章 - Java JavaFX