【发布时间】:2013-08-22 23:29:23
【问题描述】:
我有一个 Canvas 子类对象,我正尝试将它与其他一些 Canvas 子类一起添加到 JLayeredPane。在 JLayeredPane 的文档中,图层以整数形式给出,例如
layeredPane.add(child, new Integer(0));
但是,当我使用 Integer 作为图层时,会出现某种运行时错误。 (我真的不知道这个错误是什么,因为我的 IDE 一直在抱怨 Swing 库缺少源。)奇怪的是,当我使用以下表单时:
layeredPane.add(child, 0);
该行实际上无错误地执行。我对 Java 很陌生,除了认为它不能很好地工作之外,还没有弄清楚自动装箱是如何工作的。我不确定在这种情况下是否会自动装箱裸 0。
我希望我可以添加有关此错误的更多详细信息,但我什至没有看到异常。我将努力将我的代码精简为一个简单的示例,但我希望有 JLayeredPane 经验的人以前见过这个。
【问题讨论】:
-
发布SSCCE,以便我们看到您在做什么
-
见
Container.add(Component,int)。这就是该方法的来源,它并没有声称接受Integer,而是接受int。
标签: java swing autoboxing jlayeredpane