JTabbedPanel i Paint

0

Witam,

Mam taki problem:
ba2189f58b.png
To jest mój program. Jak widać jest on podzielony Border Layoutem na kilka obszarów. W środku mam JTabbedPanel

JTabbedPane tabsPane = new JTabbedPane();
		add(tabsPane,BorderLayout.CENTER);
		JPanel tab1Panel = new JPanel();
		JPanel tab2Panel = new JPanel();
		
		//DrawingWindow drawingWindow= new DrawingWindow();
		//add(drawingWindow);

		
		tabsPane.addTab("Animacja", tab1Panel); 
		tabsPane.addTab("Wykresy", tab2Panel);
		JButton test = new JButton("Press");
		tab2Panel.add(test); 

Oraz Klasa DrawingWindow

import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;

import javax.swing.JPanel;

public class DrawingWindow extends JPanel {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	public static Balls balls=new Balls();
	
	public DrawingWindow() {
		
		MakeBall();
	}
	
	
	
	
	private void MakeBall()
	{	
			balls=new Balls(10,205,5,10);

		
	}
	
	public void paint(Graphics gg){
		super.paint(gg);
		
		Graphics2D g = (Graphics2D) gg;	
		g.setColor(Color.GRAY);
		g.fillRect(0,70,515,410);
		g.setColor(Color.WHITE);
		g.drawLine(10, 285, 57, 265);
		g.drawLine(10, 285, 57, 305);
		
		g.drawLine(515, 285, 458, 265);
		g.drawLine(515, 285, 458, 305);
		for(int ii=0;ii<Parameters.numberOfCovers;ii++)
		{
			if(Parameters.whatCovers[ii]==0)
			{
				g.setColor(Color.YELLOW);
				g.fillRect(132+(57*2*ii), 205, 29+2*Parameters.cmCovers[ii], 150 );
			}
			if(Parameters.whatCovers[ii]==1)
			{
				g.setColor(Color.GREEN);
				g.fillRect(132+(57*2*ii), 205, 29+2*Parameters.cmCovers[ii], 150 );
			}
		//	Ellipse2D.Double shape = new Ellipse2D.Double(balls.getX(), balls.getY(), balls.getVelocity(),balls.getRadius());
		//	g.fill(shape);
			repaint();
		} 
	}
	public void funkcja()
	{
		repaint();
	}
}
 

Teraz tak po odkomentowaniu

 //DrawingWindow drawingWindow= new DrawingWindow();
		//add(drawingWindow);

Powstaje mi coś takiego:
9704ccbfe8.png
Znika mi JTabbedPanel jak poradzić sobie z tym, żeby rysował mi wewnątrz JTabbedPanelu?

P.S. Od razu przepraszam za jakość kodu, ale dopiero uczę się Javy.

0

no bo najpierw dodajesz na panel jtabbed a pozniej nadpisujesz swoim oknem
moim zdaniem chcesz zrobbic addTab(...,drawingWindow)

a jesli chcesz "na panelu" cos rysowac, to poczytaj o glasspane

0

JPanel tab1Panel = new DrawingWindow();
To chciałem i już doszedłem jak, ale dzięki :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1