当我使用的GridBagLayout,每当窗口大小的组件位置更改为适合新的大小..关于产品的GridBagLayout在Java中
现在我想要一个事件后更改组件的位置(如鼠标点击任何按钮),直到组件离开窗口(就像Visual Studio 2008中的属性或工具箱窗口),我这样做,但是当我改变窗口的大小时,这个组件移动到最后一个位置,我不想要。
当我通过GridBagLayout将这些元素放在JFrame上时,我使用了gridx和gridy。创建窗口后,我可以使用什么来更改此位置?
当我使用的GridBagLayout,每当窗口大小的组件位置更改为适合新的大小..关于产品的GridBagLayout在Java中
现在我想要一个事件后更改组件的位置(如鼠标点击任何按钮),直到组件离开窗口(就像Visual Studio 2008中的属性或工具箱窗口),我这样做,但是当我改变窗口的大小时,这个组件移动到最后一个位置,我不想要。
当我通过GridBagLayout将这些元素放在JFrame上时,我使用了gridx和gridy。创建窗口后,我可以使用什么来更改此位置?
我不知道什么是Visual Studio。但听起来好像您想在某些情况下控制组件布局的位置。
为此,我建议使用分层窗格。你的面板变成一个正常的图层。最重要的是一个玻璃面板,没有布局管理器(或专家)。当您开始移动组件时,将其从底层移除并将其添加到玻璃窗格中。
一种变化是将所有组件添加到上层。对于每个组件,使用网格包布局将代理组件添加到较低层。通常,代理更新实际组件的位置以响应更改,但允许此操作被打破。
非常感谢,我会搜索它:) – 2010-06-27 20:13:20
@Farah_online:这是一个很好的起点:http://java.sun.com/docs/books/tutorial/uiswing/components/ rootpane.html – trashgod 2010-06-27 23:25:42
如果你不必“使用”GridBagLayout,我会建议看看MigLayout。 – javamonkey79 2010-06-28 05:09:52
mmmm ..我搜索了一下MigLayout。这听起来有好处。 感谢您的建议:) – 2010-06-28 22:53:46