Zeichnen Sie eine Linie auf ein JFrame

Ich versuche, eine Linie zu ziehen mit der Graphics 2D aber dann die Zeile angezeigt wird, über alle die
die anderen Komponenten in der JFrame wodurch Sie unsichtbar wird. Wie kann ich dieses problem beheben?

Hier der code :

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

class Success extends JFrame{

    public Success(){
        JPanel panel=new JPanel();
        getContentPane().add(panel);
        setSize(450,450);

        JButton button =new JButton("press");
        panel.add(button);
    }

    public void paint(Graphics g) {
        Graphics2D g2 = (Graphics2D) g;
        Line2D lin = new Line2D.Float(100, 100, 250, 260);
        g2.draw(lin);
    }

    public static void main(String []args){
        Success s=new Success();
        s.setVisible(true);
    }
}
  • Können Sie uns einen screenshot?
  • Wie soll das problem behoben werden? Was möchten Sie, dass Ihr Programm zu tun?
  • Ich konnte nicht verstehen, ziehen Sie eine Linie auf Ihre JFrame, dann werden Sie das hinzufügen von Komponenten auf Ihrem JFrame, also was diese Zeile ist für, wenn Sie ausblenden möchten diese mit Ihren Komponenten. Stattdessen zeichnen Sie diese Linie durch die Verlängerung JPanel und überschreiben paintComponent(...), so dass es sichtbar sein, zusammen mit anderen Komponenten 🙂 Einfach zum zeichnen einer Linie, sollte man nicht einfach überschreiben paint(...) Methode versuchen zu überschreiben paintComponent(...) durch Zeichnung an der Spitze von einem JComponent/JPanel
  • wenn die Anwendung beginnt mit einer Zeile, als auch die Taste angezeigt die alle in den gleichen Rahmen
InformationsquelleAutor | 2012-05-26
Schreibe einen Kommentar