线程" main"中的例外情况java.lang.RuntimeException:无法编译的源代码 - 错误的sym类型:javax.swing.JFrame.setContentPaneel

时间:2015-05-13 14:36:54

标签: java

http://puu.sh/hLNH1/74b40dff89.png

我已经尝试使用谷歌搜索这个问题好几个小时一直在Skype上询问我还没有找到解决方案。因此,我认为现在是时候向专业开发人员询问发生了什么。

好吧,我收到以下错误:

  

线程中的异常" main" java.lang.RuntimeException:无法编译的源代码 - 错误的sym类型:javax.swing.JFrame.setContentPaneel     在Vb0301.main(Vb0301.java:11)​​

我刚刚开始为我的学习学习Java,而Puush链接中提供的cody是本书的直接副本。

我知道这与某些事情有关:

frame.setContentPaneel(new Paneel() );

所以我尝试将它从那里切换到:

frame.setContentPane(new Paneel() );

但此时我收到了新的错误链接:http://puu.sh/hLNVU/c760502ca9.png

它开始惹恼我,在最后几天设置IDE后错误发生错误......

我希望有人能够帮助我一直在这里寻找,但没有找到具体的问题。我希望很快得到回复,谢谢你。

名叫拿俄米

3 个答案:

答案 0 :(得分:1)

您使用的是错误的类名。 Paneel不存在,应该是Panel

此外,您呼叫的方法称为setContentPane()。有关详细信息,请参阅the reference

编辑:正如您在此答案的评论中所看到的,问题出在Panel课程中(但不是如上所述)。 Panel必须扩展JPanel以允许将其添加到框架中。

答案 1 :(得分:1)

应该是frame.setContentPane(new Paneel()) - 更多关于JFrame

此处Paneel应该是JPanel之类的容器。有关JPanel - JPanel

的更多信息

答案 2 :(得分:0)

这是因为它不允许使用setContentPane()添加JFrame,它希望像这样的容器在这里检查:

 /**
 * Checks that the component is not a Window instance.
 */
private void checkNotAWindow(Component comp){
    if (comp instanceof Window) {
        throw new IllegalArgumentException("adding a window to a container");
    }
}