本文共 1476 字,大约阅读时间需要 4 分钟。
import java.awt.*;import java.awt.geom.*;import javax.swing.*;public class DrawTest { public static void main (String [] args){ JFrame window = new DrawFrame(); window.setTitle("绘制图形"); window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); window.setBounds(100,100,600,400); window.setVisible(true);}}//窗口类class DrawFrame extends JFrame{ public DrawFrame(){ add(new DrawComponent()); pack(); }}//图形类class DrawComponent extends JComponent{ private static final int DEAFULT_WIDTH = 400; private static final int DEFAULT_HEIGHT = 400; public void paintComponent(Graphics g){ Graphics2D g2 = (Graphics2D)g; //绘制矩形 double leftx = 100; double topy = 100; double width = 200; double height = 150; Rectangle2D rect = new Rectangle2D.Double(leftx,topy ,width,height); g2.draw(rect); //绘制椭圆 Ellipse2D ellipse = new Ellipse2D.Double(); ellipse.setFrame(rect); g2.draw(ellipse); //绘制直线 g2.draw(new Line2D.Double(leftx,topy,leftx + width ,topy + height)); //画正圆 double centerx = rect.getCenterX(); double centery = rect.getCenterY(); double radius = 150; Ellipse2D circle = new Ellipse2D.Double(); circle.setFrameFromCenter(centerx, centery,centerx+radius,centery+radius); g2.draw(circle); }}