JPanel am Anfang unsichtbar

Status
Nicht offen für weitere Antworten.

Piioo

Mitglied
Hallo,

ich bekommen einfach eine wahrscheinlich einfache Sache nicht hin und weiss einfach auch nicht wonach ich genau suchen muss.

Ich hab eine JFrame Klasse mit BorderLayout. In EAST stelle ich ein JPanel mit JTextField Elementen rein.
Code:
testPanel = new TestPanel();
contentPane.add(testPanel, BorderLayout.EAST);


Wie schaffe ich es, dass der JPanel am Anfang nicht sichtbar ist? Später kann ich es durch setVisible aus und anstellen. Wenn ich es aber sofort nach dem contentPane.add unsichtbar mache, sind leider sie JLabels des JPanels sichtbar, nur die JTextFields verschwinden. Bzw. manchmal ist das JPanel leer aber im WEST und stört dort.

Code:
public void drawArrowLevelPanel(boolean draw)
	{
		if(draw)
		{	
			testPanel.setVisible(true);
		}else
		{	
			testPanel.setVisible(false);
		}
		repaint();
	}

Ich braeuchte ein paar Tips, wonach ich suchen soll.
Gruss[/code]
 
Du hast wahrscheinlich Recht und ich sollte es einmal ohne alles drum herum programmieren.

Mein Problem war, dass ich nicht wusste wie ich ein Panel erst spaeter erscheinen lassen kann.
Bzw. mit panel.setVisible(false) nach dem add ins contentPane irgendwelche Seiteneffekte verursachte.
 
hey piioo...

ich hatte das gleiche problem und bei mir funktionierts hiermit:

Code:
SwingUtilities.invokeLater(new Runnable()
	    				{
	    				   public void run()
	    				   {
	    					   try
	    					   {
	    						  //Hier kommt dein JPanel rein, dass du später hinzufügen willst

	    					   
	    					   }
	    				   catch(Exception e)
	    				   	{
	    					   e.printStackTrace();
	    				   	}
	    				   }
	    				  });
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben