【问题标题】:Add a JScrollPane to a JLabel将 JScrollPane 添加到 JLabel
【发布时间】:2012-03-09 06:13:32
【问题描述】:

我似乎不知道如何将JScrollPane 添加到JLabel。我正在使用的JLabel 填充了一个长格式的HTML 字符串。请帮忙。

area = new JLabel();

JScrollPane scroller = new JScrollPane(area, 
      JScrollPane.VERTICAL_SCROLLBAR_ALWAYS, 
      JScrollPane.HORIZONTAL_SCROLLBAR_NEVER);

panel.add(scroller);

【问题讨论】:

  • 那为什么要使用 JLabel 呢?而不是 JTextArea 并将其设置为不可编辑?
  • 如果不发布代码,我们这些没有 ESP 的人就不可能知道你做错了什么。

标签: java html swing jscrollpane


【解决方案1】:

您能否向我们提供您的代码?您是否将视口视图设置为JLabel?实例化您的 JLabelJScrollPane。然后将JScrollPane 视口设置为JLabel (setViewPortView(jlabel);),然后将JScrollPane 添加到您希望启用滚动JLabel 的任何组件中。

希望这会有所帮助!

【讨论】:

  • @SolerMani:不要在评论中发布代码,因为如您所见,它不可读,而是编辑您的原始问题并发布代码与 cmets 和文本 讨论任何错误以及它如何不起作用。给 Marc H,1+ 的非常好的推荐。
【解决方案2】:

您不能将 JScrollPane 添加到 JLabel ,您可以做的是创建一个 JScrollPane 并添加一个 JLabel

看到这个:http://www.cs.cf.ac.uk/Dave/HCI/HCI_Handout_CALLER/node63.html

【讨论】:

    【解决方案3】:

    你需要设置JScrollPane的视口视图:

    scroller.setViewPortView(area);

    在你走之前坚持这条线panel.add(scroller);

    让我们知道这是否有帮助。

    【讨论】:

      【解决方案4】:

      在 JLabel 中保存或显示长 Html 格式的文本确实不是一个好主意,因为有可能,最好使用 JEditorPanes / JTextPanes,这些 JComponet 支持样式和 html 格式的文本、图标等...,@987654322 的示例@和JEditorPane

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-03-03
        • 1970-01-01
        • 2012-11-07
        • 2012-11-17
        • 2013-12-17
        • 2014-01-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多