2010-12-13 27 views
0

我来自Opengl项目,我需要能够将元素放置在我的屏幕上,并且他们呆在那里。摆动布局:防止我的组件移动

我正在创建一个与原始的opengl项目(800 * 480)尺寸相同的小程序,我希望能够在坐标100,200处放置一个按钮150 * 50。

一切正常util的一个事件触发的setSize,然后突然布局()被触发,使我的按钮移动到屏幕的中心......

我怎样才能解决呢?

我目前正在重写我的JPanel的布局(),但感觉不对^^

回答

1

阅读有关Using Layout Managers的Swing教程。强烈建议您学会有效地使用布局管理器,并避免尝试手动定位组件。初学者不理解如何有效地使用布局管理器并尝试使用手动布局。

但是,本教程中有关于“绝对定位”的部分可以帮助您。但是,通常只有在您具有拖放功能时才能使用此功能。

+0

嘿,不是一个完整的初学者,只是一个很长的时间。关于手动放置,我正在为Android游戏创建一个在线编辑器,所以90%将取决于用户点击的位置......因此对于布局不太好。由于我在界面中有3个按钮(其余的在菜单中),所以我需要绝对定位。感谢您的链接 – 2010-12-13 07:53:08

1

默认情况下,一个JPanel将使用FlowLayout。你会更好用其他东西,例如BorderLayout,但有一个数字可供选择。使用例如:

panel.setLayout(new BorderLayout()); 

您可以使用setBorder在按钮周围设置边框。

+0

是的,我在调试中发现了线程中的Flowlayout类。不幸的是,我创建的小程序将无法使用布局 – 2010-12-13 07:54:51