【问题标题】:Height of JLabel to grow with number of linesJLabel 的高度随行数增长
【发布时间】:2012-05-30 13:53:37
【问题描述】:

我希望我的JLabel 是分配给文本的特定字符串所需的高度。文本字符串可以有任意数量的行,在字符串中使用\n。因此,如果您有一个字符串,"Hello\nit\nis\nme\n" 标签的高度将自动调整以适合 4 行。

如何实现?

【问题讨论】:

  • 你可能想说第三次。 :) 我自己会使用 JTextArea 配置为看起来像 JLabel。

标签: java swing jlabel multiline


【解决方案1】:
  • JLabel中使用正确的JTextComponent而不是使用HTML格式的文本

  • 我认为应该禁用 "Hello\nit\nis\nme\n" JTextAreaJComponent

【讨论】:

    【解决方案2】:

    JLabel1 通常会忽略换行符。要获取多行文本,请使用多行组件,例如 JTextArea2 或在标签中使用 HTML 格式。

    1. 这是example of using HTML formatting(上面的屏幕截图)。该示例使用样式 (CSS) 来自动插入换行符。这比手动计算在文本块中插入换行符的位置要容易得多。
    2. 当然,具有setLineWrap(true)setWrapStyleWord(true) 等方法的JTextArea 也会自动处理换行。

    【讨论】:

      猜你喜欢
      • 2011-02-01
      • 1970-01-01
      • 2016-09-15
      • 1970-01-01
      • 1970-01-01
      • 2017-01-11
      • 2016-02-13
      • 2014-01-28
      • 2013-11-20
      相关资源
      最近更新 更多