示範 Graphics 基本繪圖方法:drawRect、drawRoundRect、drawPolygon、drawOval、drawArc、fillArc。並在 paint 中繪製網格輔助定位。
import java.awt.*;
import javax.swing.*;
public class BasicShapes extends JFrame {
public static void main(String[] args) { new BasicShapes().repaint(); }
BasicShapes() {
super("Basic Shapes");
setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
setSize(310, 160);
setVisible(true);
}
public void paint(Graphics g) {
// 網格
g.setColor(Color.CYAN);
for (int i = 0; i <= 300; i += 10) g.drawLine(i, 0, i, 150);
for (int i = 0; i <= 150; i += 10) g.drawLine(0, i, 300, i);
g.setColor(Color.BLACK);
// 矩形
g.drawRect(10, 30, 80, 50);
// 圓角矩形
g.drawRoundRect(110, 30, 80, 50, 20, 10);
// 多邊形
int[] x = {10,30,80,50,10};
int[] y = {90,140,120,100,90};
g.drawPolygon(x, y, 5);
// 橢圓
g.drawOval(110, 90, 80, 50);
// 弧 (0-90度)
g.drawArc(210, 30, 80, 50, 0, 90);
// 填充扇形 (0-90度)
g.fillArc(210, 90, 80, 50, 0, 90);
}
}
參數說明:
drawRoundRect(x, y, w, h, arcW, arcH):圓角寬高分別指定水平/垂直弧度。drawArc/fillArc(x, y, w, h, start, sweep):以度數為單位,3點鐘方向為 0 度,逆時針為正。drawPolygon(x[], y[], n):依序連接頂點並自動閉合。