将 JFrame 转换为 JPanel

Converting JFrame to JPanel

我目前已经使用 JFrame 编写了一些 Java Swing,并且工作正常。

但现在我需要使用多个屏幕,它们已使用 cardlayouts 完成。

所以我需要将我的 JFrame 转换为 JPanel。目前我的 JFrame

有这条线
mainFrame.getContentPane().add(c4Panel,BorderLayout.CENTER); 

但是如果我将 mainFrame 转换为 JPanel 我不能使用 getContentPane() IDE 告诉我使用 getRootPane()

但是我在这一行遇到错误

mainPanel.getRootPane().add(c4Panel,BorderLayout.CENTER); 

我得到的错误是

Exception in thread "main" java.lang.NullPointerException
mainPanel.getRootPane().add(c4Panel,BorderLayout.CENTER); 

应该是:

mainPanel.add(c4Panel,BorderLayout.CENTER); 

代码:

mainFrame.getContentPane()

..只是返回一个容器,它本身有一个 add() 方法,getContentPane() 部分已经有一段时间不需要了。