Java 如何更改JFrame中JLabel的位置?

Java 如何更改JFrame中JLabel的位置?,java,swing,layout-manager,Java,Swing,Layout Manager,所以我在Eclipse中使用JFrame制作了一个黑手党游戏,我想在JFrame中设置文本的位置 每当我使用setPositionX和setPositionY时,它都不起作用 有什么建议吗?您不能使用绝对坐标放置组件 Insets insets = panel.getInsets(); Dimension size =test.getPreferredSize(); // Just replace 10 & 0 according to X & Y position you w

所以我在Eclipse中使用JFrame制作了一个黑手党游戏,我想在JFrame中设置文本的位置

每当我使用setPositionX和setPositionY时,它都不起作用


有什么建议吗?

您不能使用绝对坐标放置组件

Insets insets = panel.getInsets();
Dimension size =test.getPreferredSize();

// Just replace 10 & 0 according to X & Y position you want
test.setBounds(10 + insets.left, 0 + insets.top, size.width, size.height); 
你学习的概念。然后你决定哪种类型的经理最能支持你的想法

然后让该管理器对所有UI元素进行定位。其他任何事情基本上都是浪费时间

含义:当然,您可以使用绝对值“手动”定位组件(有关如何操作的说明,请参阅)

但是有一个很大的问题:你花了很多时间来完美地调整你的组件。然后你会记得:“也许我必须允许我的用户调整窗口的大小”。然后大部分工作就变得毫无用处了;正如您很快想到的:“当人们调整框架的大小时,我希望这个部分随它增长/收缩;而那个部分应该保持不变”

长话短说:绝对定位仅适用于固定分辨率、固定窗口大小、固定字体大小、固定所有内容。基本上,它会把你固定在某个角落,而走出那个角落是很难的


所以要避免这种情况;并学习如何使用一个(或多个)布局管理器为您完成所有繁琐的工作。

您不能使用绝对坐标放置组件

你学习的概念。然后你决定哪种类型的经理最能支持你的想法

然后让该管理器对所有UI元素进行定位。其他任何事情基本上都是浪费时间

含义:当然,您可以使用绝对值“手动”定位组件(有关如何操作的说明,请参阅)

但是有一个很大的问题:你花了很多时间来完美地调整你的组件。然后你会记得:“也许我必须允许我的用户调整窗口的大小”。然后大部分工作就变得毫无用处了;正如您很快想到的:“当人们调整框架的大小时,我希望这个部分随它增长/收缩;而那个部分应该保持不变”

长话短说:绝对定位仅适用于固定分辨率、固定窗口大小、固定字体大小、固定所有内容。基本上,它会把你固定在某个角落,而走出那个角落是很难的


所以要避免这种情况;并学习如何使用一个(或多个)布局管理器为您完成所有繁琐的工作。

您能发布您尝试过的代码吗?这将有助于我们帮助您。显示您尝试过的内容。版面管理器、版面属性、边距和空边框扫描您尝试过的代码?这将帮助我们帮助您。显示您尝试过的内容。布局管理器、布局属性、页边距和空边框