Java JTextArea、JLabel和其他组件:如何设置位置
例如,如果我有一个Java JTextArea、JLabel和其他组件:如何设置位置,java,swing,location,jlabel,jcomponent,Java,Swing,Location,Jlabel,Jcomponent,例如,如果我有一个JLabel,我调用setLocation()方法,那么什么也不会发生。与所有其他JComponents相同。如何指定位置?如果能够将这些组件移动到我想移动的任何位置,那将是一件非常好的事情。布局管理器将为您定位组件。可以不使用布局管理器自行定位组件,但不建议这样做。请阅读oracle的以下教程我猜面板或框架的布局管理器正在为您设置标签的位置 您需要做的是将布局设置为null(这将使框架不会试图自行布局组件): 但是,我不允许这种变通方法,因为LayoutManagers在确定
JLabel
,我调用setLocation()
方法,那么什么也不会发生。与所有其他JComponent
s相同。如何指定位置?如果能够将这些组件
移动到我想移动的任何位置,那将是一件非常好的事情。布局管理器将为您定位组件。可以不使用布局管理器自行定位组件,但不建议这样做。请阅读oracle的以下教程我猜面板或框架的布局管理器
正在为您设置标签的位置
您需要做的是将布局设置为null
(这将使框架不会试图自行布局组件):
但是,我不允许这种变通方法,因为
LayoutManager
s在确定组件应该放在哪里时非常有用。此外,当LayoutManager
为null
时,您每次都必须跟踪新组件,在窗口收缩时自己执行布局计算,等等。请查看LayoutManager
s的帮助,我可以制作自己的布局来做同样的事情吗?“我不允许…”…甚至向新手提及null
布局。当他们能够使null
布局正常工作时,逻辑应该封装在一个(可能是定制的)布局中。@AndrewThompson OP问了一个关于某个问题的问题,我给了他两个解决方案。一种解决方案通过将LayoutManager
设置为null
,解释了该问题以及如何解决该问题;另一个问题是如何通过正确使用LayoutManager
s来解决问题(这是我推荐的),OP最终决定使用LayoutManager
。那么为什么投票失败呢?“OP问了一个关于某个问题的问题”如果OP问你如何射中自己的脚,你会给他们指示吗?@AndrewThompson我会把他指向另一个StackExchange网站,或者将其标记为非真实问题。然而,这是一个真正的问题,答案是正确的。我不认为你有必要投票否决我。除非绝对必要,否则不要。相反,要学会使用布局管理器,不要害怕使用具有不同布局管理器的复合组件来获得相同的效果。布局管理器在计算布局时考虑了很多因素,很多工作您可能并不想复制-IMHO@MadProgrammer“除非绝对必要,否则不要。”我还没有看到组件布局代码不应该放在(可能是自定义)布局中的情况。因此,这从来不是绝对必要的。
public GUI()
{
setLayout(null);
}