我在互联网上遇到了一个使用这两个语句的示例:

dp.add( bg , new Integer( 50 ) );


(dp是JDesktopPane对象,bg是JLabel)

setLayeredPane( dp );


如果您想知道它们的用法,那么这就是我一直在研究的内容:
http://www.coderanch.com/t/329874/GUI/java/put-background-image-swing

我是Java的初学者,并且我理解了示例的其余部分,只是不理解这两个语句-令我感到困惑的是,我不知道它们在做什么!最让我感到困惑的是“ new Integer(50)”,但是请您对两者进行彻底的,对初学者友好的解释吗?非常感谢。

提前致谢,

亚历克斯

最佳答案

请参见documentation on JLayeredPane


  每层是一个不同的整数。可以通过在添加调用期间传递Component对象来在Integer上设置layer属性。
  例如:

layeredPane.add(child, JLayeredPane.DEFAULT_LAYER);

  
  要么

layeredPane.add(child, new Integer(10));



您可以找到默认图层值here的整数值。



dp.add(lbl,new Integer(50));


上面的代码将JLabel组件lbl添加到具有JDesktopPane指定层的JLayeredPane(是50)中。添加到dp中的层少于50个的组件将在之前渲染,而具有层数大于50的组件将在之后渲染-即简单的深度顺序,其中较大的层表示较近的组件。

setLayeredPane( dp );


这会将JFrame对象(该probably shouldn't be a subclass)表示的ImagePaneTest设置为使用dp作为其分层窗格。您可以在relevant Java Tutorial中查看Swing顶级容器的工作方式。

关于java - 您能解释这些说法吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11870429/

10-12 01:24
查看更多