JPanels内容并未重新展示

时间:2016-01-26 17:34:04

标签: java swing jpanel show

我花了两天时间解决这个问题,但我没有找到任何解决方案。 我会提一些简单的代码。

JFrame有一些菜单栏,JPanels,但我们关注2个选项:

"创建服务器"

"关闭连接"

当我创建服务器时,在JPanel上我绘制了棋盘格,当我关闭连接时,JPanel很干净,但是当我想再次创建服务器时问题就开始了, JPanel什么也没显示。 < / p>

  1. 我检查了输入JPanel,并在重新创建服务器之前放置了所需的JPanel - 没有
  2. 我想也许是它的gameControl,但我在其他情况下使用它也很有用。
  3. 如果有人想尝试:

    以下是整个项目:http://bycniebytem.cba.pl/checkers.rar

    问题出在Checkers.java类中,

    但我在等你的建议!的谢谢!

       closeConnection.addActionListener(new ActionListener() {
    
            @Override
            public void actionPerformed(ActionEvent e) {
    
                try 
                {
                    if(server != null)
                    {
                        if(server.getPlayerBlackSocket() != null)
                        {   
                            server.sendMessage(server.getPlayerBlackSocket(), "closeConnection");
                            server.getPlayerBlackSocket().close();
                        }
                        if(server.getPlayerWhiteSocket() != null)
                        {
                            server.sendMessage(server.getPlayerWhiteSocket(), "closeConnection");
                            server.getPlayerWhiteSocket().close();
                        }                        
                        if(server.getServerSocket() != null)
                        {
                            server.getServerSocket().close();
                        }
                    }
                } 
                catch (IOException ex) 
                {
                }
    
                player1.isOpenedConnection = false;
    
                JPanel pane = (JPanel) getContentPane();
                pane.removeAll();
                remove(pane);
    
                JPanel Pan = new JPanel();
                JLabel label = new JLabel("label"); // just to test if jpanel can show and it shows
                label.setBounds(10,10,100,30);
                Pan.add(label);
                setContentPane(Pan);
                revalidate();
                repaint();
    
                closeConnection.setEnabled(false);
                hostServer.setEnabled(true);
            }
        });
    

    并关闭连接

    /**
    * Child controller.
    *
    * @Route("/profile/{parentName}/{childName}")
    */
    

0 个答案:

没有答案