Ваадин: Мой ярлык игнорирует символ возврата каретки - PullRequest
5 голосов
/ 11 января 2012

У меня есть входящая текстовая строка, которая содержит разрыв строки ("\ r").

Когда я вывожу это с помощью: System.out.println(myString), перевод каретки интерпретируется.

Однако, когда я устанавливаю строку в качестве содержимого метки, она игнорирует возврат каретки.

Как я могу заставить Label интерпретировать возврат каретки / строки (без режима XHTML)?

Ответы [ 3 ]

7 голосов
/ 12 января 2012

Вот как вы можете поместить этот текст в ярлык:

<code>@Override
public void init() {
    Window window = new Window();
    Label label = new Label("<pre>First line\rSecond line\nThird line
", Label.CONTENT_XHTML); window.addComponent (метка); setMainWindow (окно); }

Ключ использует режим содержимого Label.CONTENT_XHTML и заключает текст в тег <pre>.

3 голосов
/ 02 апреля 2014

В Vaadin 7.0 вы можете использовать ContentMode.PREFORMATTED, например ::

String resultText = "First line\rSecond line\nThird line";
Label dateLabel = new Label( resultText, ContentMode.PREFORMATTED );

и если вы хотите, чтобы текст выглядел сексуально, вы можете использовать некоторые темы, например:

dateLabel.setStyleName( Runo.LABEL_SMALL );

Это должно работать и элегантно.

0 голосов
/ 11 января 2012

После прочтения Книги Ваадина и нескольких тестов, я не думаю, что \ r может быть интерпретировано Меткой.

Замена \ r на \ n дает вам две опции:

Label.setContentMode(Label.CONTENT_XHTML). //But you don't want to do this
Label.setContentMode(Label.CONTENT_PREFORMATTED) //But I think it's not the display you want

С уважением.

Эрик

...