如何在Java中绘制各种形状?我应该使用哪个库?

Hic*_*ick 3 java swing drawing shapes

我想写一个程序,可以绘制我分配给它的任何类型的形状

  1. 广场
  2. 长方形

我应该使用哪个库,以及如何在Java中使用它?

我是一个python编码器,因此很难应付Java.

bra*_*boy 7

当然你可以使用Swing做到这一点.您可能想要查看Java的Shape库.

或者,您可以简单地覆盖Component的paint方法,如下所示.

替代文字

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

public class ShapeTest extends JFrame{
     public ShapeTest(){
          setSize(400,400);
          setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
          setLocationRelativeTo(null);
          setVisible(true);
     }

     public static void main(String a[]){
         new ShapeTest();
     }

     public void paint(Graphics g){
          g.drawOval(40, 40, 60, 60); //FOR CIRCLE
          g.drawRect(80, 30, 200, 200); // FOR SQUARE
          g.drawRect(200, 100, 100, 200); // FOR RECT
     }
}
Run Code Online (Sandbox Code Playgroud)

  • -1,你永远不应该覆盖JFrame的paint()方法,特别是当你不要使用supper.paint()时.通过覆盖像JPanel这样的Swing组件的paintComponent()方法来完成自定义绘制.你也应该总是调用super.paintComponent().有关更多信息和示例,请阅读自定义绘图上的Swing教程(http://download.oracle.com/javase/tutorial/uiswing/painting/index.html)中的部分. (2认同)