2017-05-08 30 views
0

我從jFrame中刪除JScrollPanels時遇到問題。如何從JFrame中刪除JscrollPane?

這是點擊後加入JScrollPanel代碼:

jButton2.addActionListener(new java.awt.event.ActionListener() { 
      public void actionPerformed(java.awt.event.ActionEvent evt) { 

       if(count_games == 0) 
        { 
         Game game = new Game(); 
         game.setPreferredSize(new Dimension(1000,1000)); 
         game1 = new JScrollPane(game); 
         frame.add(game1); 

         game1.setBounds(0, 40, 1000, 960); 


         count_games ++; 
        }else if(count_games == 1)... 

,這是爲了去除JScrollPanel代碼:

jButton1.addActionListener(new java.awt.event.ActionListener() { 
       public void actionPerformed(java.awt.event.ActionEvent evt) { 
        if(count_games == 1) 
        { 


         game1.removeAll(); 
         game1.revalidate(); 
         game1.repaint(); 

         count_games --; 

        }else if(count_games == 2)... 

取出後的空線框停留在JFrame中。 實施例: Before remove

After remove

+0

你試圖達到什麼目標還不是很清楚。您沒有從其父容器中移除JScrollPane。也許你打算調用'frame.remove(game1)'從你的jframe中移除scrollpane? – skubski

+0

是的,這將是解決方案,謝謝 –

回答

1
game1.removeAll(); 

這消除添加到JScrollPanel所有組件。如果你想刪除整個面板,你需要將其從JFrame中刪除。

frame.remove(game1); 

如果你想使你的框架空呼frame.removeAll();法:

因此,與更換這種說法。