JPanel和LayerManager之间的区别

时间:2011-10-13 19:16:32

标签: java swing layout-manager

好的我收集到每个JComponent都可以设置它的位置......赌吧JPanel,JButton,JLabel ......无论如何。它可以使用.setLocation(x,y)设置其位置。

我怀疑实际上当我做的时候

JButton btn = new JButton("Click me!") ;
btn.setLocation(10,200); 

我实际上是在面板中更改按钮的位置,而不是在框架中。如果我做了

JPanel jPanel = new JPanel(); 
jPanel.setLocation(10,100); 

我正在更改jPanel的位置,而不是在JFrame中,而是在默认情况下提供的默认JPanel中。所以JComponents可以更改它们的位置,为什么不直接将所有内容转储到血腥的jFrame对象中呢? :S

我没有尝试,但我相信我可以通过使用setLocation(x,y)方法安排一些事情......我想这对屁股来说是一个很大的痛苦。 这导致了我的问题......如果我们可以通过使用方法设置组件位置,那么LayoutManager用于什么?

请举例说明差异吗?

1 个答案:

答案 0 :(得分:1)

  

请举例说明差异吗?

以下是an example使用布局以及挑战。

面临的挑战是使用setLocation() / setBounds()制作该UI的可调整大小的PLAF可更改版本。

如果您(或任何人)可以管理它(代码小到可以发布到帖子中),我会在答案中提供 500赏金