2012-08-04 127 views
-1

一旦JPanel已被實例化並添加到一個可見JFrame,我如何添加一個新的JComponent更新顯示器,以顯示該新JComponent怎樣的JPanel後的JComponent添加到JPanel中已經添加到JFrame中

原題:

如何JPanelJComponent添加到JPanel已添加到JFrame。我想我可能需要延長JPanel並可能覆蓋paintComponent()

+0

照顧細節用一些代碼? – 2012-08-04 18:28:57

+0

雷霆:你的問題是一個非常不完整的問題,你很幸運,有人猜到你實際上在問什麼,然後給了你一個有效的答案。請下次嘗試將更多信息放入您的問題中。一個好的經驗法則就是儘可能多地提問你的問題,因爲你希望志願者在回答問題時能夠發揮自己的作用。 – 2012-08-04 18:56:12

+0

我不同意我認爲我的帖子是合乎邏輯並且重要的。我不認爲馬克斯對這個問題有所猜疑,但他必須成爲那個人才能告訴我的。 – ThunderWolf 2012-08-04 19:07:30

回答

4

JPanel.add()應該可以正常工作。如果框架已經可見,然後調用:

validate(); 
repaint(); 

此外,根據您可能需要pack()重新包裝幀的大小和佈局。

如果您可以發佈SSCCE與您的問題更容易。

+1

validate()是我需要的,謝謝。 – ThunderWolf 2012-08-04 18:54:26

1

我不知道如果我明白你的問題,應該是不加任何問題向JComponent一個JPanel,befor或之後已被添加到一個JFrame

JPanel panel = new JPanel(); 
frame.setContentPane(panel); 
// sometime later 
panel.add(new JLabel("JLabel is a JComponent")); 

也許你發佈你的代碼,問題會更清楚。