Java JTextArea,JLabel和其他组件:如何设置位置

时间:2013-04-02 00:21:18

标签: java swing location jlabel jcomponent

例如,如果我有一个JLabel,并且我调用setLocation()方法,则没有任何反应。与所有其他JComponent相同。我该如何指定位置?能够在任何我想要的地方移动这些Component会很好。

2 个答案:

答案 0 :(得分:2)

布局管理器将为您定位组件。可以不使用布局管理器并自己定位组件,但不建议这样做。请阅读oracle http://docs.oracle.com/javase/tutorial/uiswing/layout/none.html

中的以下教程

答案 1 :(得分:1)

我猜你的面板或框架的LayoutManager正在为你设置标签的位置。

您需要做的是将布局设置为null(这将使框架不会尝试自行布局组件):

public GUI() 
{
    setLayout(null);
} 

我不宽恕这种解决方法,因为LayoutManager在映射组件应该去的地方非常有用。此外,当LayoutManagernull时,您每次都必须跟踪新组件,当窗口移动缩小时自己执行布局计算等。请查看this tutorial寻求LayoutManager的帮助