2016-04-13 35 views
0

Ich bin neu in der Verwendung der Farbkomponente und wundere mich, warum es nicht in meinem graphArea (jpanel) erscheint. Ich habe die Klasse drawpanel, die es implementiert, aber es liefert mir keine Fehler. Soll ich etwas anderes hinzufügen, damit das Oval angezeigt werden kann?Wie zeichnet man eine Form

public class graphGUI extends JFrame { 

    JFileChooser fc; 

    //private final JTextArea graphArea = new JTextArea(); 
    private final JPanel graphArea = new JPanel(); 
+0

Was ist der Zweck von 'graphArea.paintComponents (g);'? Sie rufen eine Malmethode eines JPanel von einem anderen JPanel. – Berger

+0

@Berger Ich dachte, das wäre, wie würde ich es in meinem GUIArea Panel hinzufügen? – BinaryBoy

+0

Hier ist ein [Beispiel Java Swing GUI] (http://stackoverflow.com/questions/34981403/bufferedimage-not-being-cleared-before-each-rendering/35002727#35002727), das Ihnen zeigt, wie Sie als richtige paintComponent-Methode erstellen . Sie malen in der paintComponent-Methode. Nichts anderes. –

Antwort

1

Sie gemischte Dinge, möchten Sie wahrscheinlich graphArea ein DrawPanel sein, also:

private final JPanel graphArea = new DrawPanel(); 

Dann in paintComponent, dem letzten Aufruf entfernen, weil es sinnlos ist, aber die Eltern-Methode aufrufen, anstatt , um es zuerst malen zu lassen.

 @Override 

     public void paintComponent(Graphics g) { 

     super.paintComponent(g); 
     g.drawOval(50, 50, 50, 50); 

    } 
+0

Vielen Dank! – BinaryBoy

+0

Haben Sie eine Idee, warum es den oben hinzugefügten Code nicht akzeptiert? Ich versuche, ein Diagramm von einem Objekt anzuzeigen. Es beschwert sich über das JPanel in den Paramaters und sagt, dass es das Symbol nicht finden kann. aber offensichtlich ist es keine Variable – BinaryBoy

Verwandte Themen