Добавьте JScrollPane к JLabel - PullRequest
       8

Добавьте JScrollPane к JLabel

3 голосов
/ 18 февраля 2012

Не могу понять, как я могу добавить JScrollPane к JLabel.JLabel, который я использую, заполнен длинной отформатированной строкой HTML.Пожалуйста, помогите.

area = new JLabel();

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

panel.add(scroller);

Ответы [ 4 ]

7 голосов
/ 18 февраля 2012

Действительно не очень хорошая идея хранить или отображать длинный текст в формате HTML в JLabel, поскольку это возможно, лучше было бы использовать JEditorPanes / JTextPanes , эти JComponets поддерживают стилизованный и форматированный текст HTML, значки и т. ., примеры для JTextPane и JEditorPane

2 голосов
/ 18 февраля 2012

Можете ли вы предоставить нам свой код? Вы устанавливаете вид окна просмотра на JLabel? Создайте свой JLabel и JScrollPane. затем установите область просмотра JScrollPane на JLabel (setViewPortView(jlabel);), затем добавьте JScrollPane к любому компоненту, который вы хотите, чтобы прокрутка JLabel была включена.

Надеюсь, это поможет!

1 голос
/ 18 февраля 2012

Вы не можете добавить JScrollPane к JLabel, что вы можете сделать, это создать JScrollPane и добавить JLabel.

См. Это: http://www.cs.cf.ac.uk/Dave/HCI/HCI_Handout_CALLER/node63.html

0 голосов
/ 18 февраля 2012

Вам необходимо установить вид окна просмотра JScrollPane:

scroller.setViewPortView (area);

вставьте эту строку непосредственно перед тем, как идти panel.add(scroller);

Дайте нам знать, помогает это или нет.

...