I am new to paint / graphics and am wondering how to add JPanel to my code so that all graphics are on JPanel and not on JFrame.
In other words, I'm trying to create a graphical interface that will allow me to do this: on the right side they show the pleasant movement of the lines on the JPanel on the LEFT side, add a JTextArea (on JPanel), which will show the coordination of the graphics.
- This is a simplification of a big problem, but I think the code here is easier to understand.
Thanks!!!
(picture below, moving lines or just running code)
import java.awt.Color; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.geom.Line2D; import javax.swing.JFrame; public class Test extends JFrame implements Runnable { private Line2D line; public Test() { super("testing"); this.setBounds( 500, 500, 500, 500 ); this.setVisible( true ); } public void paint( Graphics g ) { Graphics2D g2 = (Graphics2D) g; g2.draw(line); } @Override public void run() { int x=50; while (true) { try { Thread.sleep( 50 ); line = new Line2D.Float(100+x, 100+x, 250-x, 260+x%2); x++; repaint(); if (x==5000) break; } catch (InterruptedException e) { e.printStackTrace(); } } } public static void main (String args[]) { Thread thread = new Thread (new Test()); thread.start(); } }

java swing jpanel jframe repaint
adhg
source share