【问题标题】:Java Changing JLabel Text changes JLabel PositionJava 更改 JLabel 文本更改 JLabel 位置
【发布时间】:2013-04-29 20:00:11
【问题描述】:

我有一个问题,我在内容面板中有一个 JLabel,它的布局是绝对 X Y。 问题是我的JLabel的文字以JLabel为中心,但是当我在文字中添加几个字母时,JLabel的位置被推后了一点。

我不能修复 JLabel 位置并始终将其用于整个应用程序吗?即使文本发生变化.. ?

提前致谢;)

【问题讨论】:

  • 如果文字居中,改变文字会导致标签要左右展开
  • 最初无法将其居中,然后当我在末尾附加字符时,它会停留在与 ? 相同的位置
  • 不要将标签中的文本居中(因为您没有提供示例代码,我假设您正在使用 setHorizo​​ntalAlignment),而是尝试将水平对齐设置为 JLabel.LEFT。如果在那之后让标签居中很重要,那么当文本发生更改时,您将不得不对其布局进行更大的控制
  • 然后,正如我所说,由于您使用的是空布局,请对标签的位置负责。默认使用 JLabel.LEFT 并根据需要调整其位置。该标签目前正在按照您的要求进行操作
  • @darkling 验证答案是否正确,如果您认为我应该添加其他内容,请告诉我

标签: java text position jlabel


【解决方案1】:

当水平对齐设置为JLabel.CENTER时,文本将要围绕标签的中心位置左右展开。

这意味着标签正在做的正是标签被要求做的事情。

为此,您应该使用JLabel.LEFT 作为水平对齐方式,并根据需要将标签本身放置在其父容器中

【讨论】:

  • 谢谢伙计,我们已经在 cmets 谈过了,是的,这就是解决方案 :)
【解决方案2】:

标签在同一个地方。它的位置是左上角。文本越少,它就会越小。

如果你想使用绝对布局,设置它的位置和大小。

【讨论】:

    猜你喜欢
    • 2012-02-21
    • 2018-06-05
    • 2014-08-25
    • 2014-09-14
    • 2012-12-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多