1
我有一個java框,其中有各種組件。當用戶執行某個操作時,我想清空該框,在其中放入一組不同的組件,然後將該框表示給用戶。該框是一個JDialog框的一部分。我可以清空這個盒子並重新填充它,但顯示並不反映新的內容。它僅僅是一個空白的顯示(我假設反映了我清空盒子內容的事實)。我在放入新內容後重新繪製盒子,但盒子所在區域的顯示器是空白的。奇怪的是,如果我第一次添加一個線框到框中,然後重新繪製它,框的內容出現在屏幕上。這是最離奇的行爲。任何想法爲什麼會發生這種情況,以及如何解決這個問題?更改內容後刷新框的內容
感謝,
埃利奧特
自一個JDialog應該dialog.validate()。但是,這是訣竅。 – Elliott 2011-05-25 20:38:29
@Elliott:不,重新驗證是正確的,但在將其轉換爲JPanel之後,您會在JDialog的contentPane上調用它。 '((JPanel)dialog.getContentPane()).revalidate();'會做。 1+到meverett。 – 2011-05-25 21:35:40