2015-02-07 93 views
0

所以在我的程序中,我在開始時設置了一個JLabel,所以現在有一個圖像。現在我需要刪除該JLabel並將其替換爲新的。所以我做:如何刷新JFrame?

frame.remove(test_loadingJL); 
frame.add(test_lockScreenJL); 

但是,當我看,它仍然是第一形象,它不更新,直到我手動調整實際窗口。有沒有更新框架的方法,所以我不必那樣做?

回答

0

這應該工作frame.revalidate()

+0

感謝這個人幫了我很多! – 2015-02-07 18:43:48

0

您的選擇:

1.SwingUtilities.updateComponentTreeUI(name of Component(in your example is frame) 

SwingUtilities.updateComponentTreeUI(frame); 

2.frame.dispose(); 

frame.setVisible(true); 

3.revalidate(); 

    revalidate();//<------------needed when add/remove components 
    repaint();//sometimes needed also, sometimes not 

還要檢查這個環節possible dublicate question 同樣的問題here

這些應該工作

0

嘗試調用frame.setVisible(真)在添加組件之前。