4 Stimmen

Wie kann ich in Java verschiedene Formen zeichnen? Welche Bibliothek sollte ich verwenden?

Ich möchte ein Programm schreiben, das jede Art von Form zeichnen kann, die ich ihm zuweise, wie

  1. Kreis
  2. Platz
  3. Rechteck

Welche Bibliothek sollte ich verwenden, und wie gehe ich dabei in Java vor?

Ich bin ein Python-Programmierer und finde es daher schwierig, mit Java zurechtzukommen.

8voto

bragboy Punkte 33596

Natürlich können Sie das mit Swing tun. Vielleicht möchten Sie sich die Java's Form Bibliothek zu finden.

Alternativ können Sie auch einfach die Paint-Methode der Komponente überschreiben, wie unten gezeigt.

alt text

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
     }
}

4voto

Starkey Punkte 9595

Le site Java2D API hat das, wonach Sie suchen.

2voto

camickr Punkte 315810

Überprüfen Sie Benutzerdefinierte Malerei Ansätze für eine Reihe von Ideen. Die DrawOnComponent ist näher an dem, was Sie wollen. Es müsste geändert werden, um Ihre benutzerdefinierte Form Objekte in die Liste aufzunehmen.

2voto

trashgod Punkte 199887

GraphPanel ist ein einfaches Beispiel für ein Programm zum Zeichnen von Objekten mit beweglichen, größenveränderlichen, farbigen Knoten, die durch Kanten verbunden sind.

0voto

user527619 Punkte 89

Java 2D ist das, was Sie zum Zeichnen von Grafiken benötigen (d. h. zum Zeichnen von farbigen Rechtecken, Kreisen, Linien und deren Animation).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X