Как растянуть текстовое поле относительно ширины данных в отчетах Jasper - PullRequest
5 голосов
/ 24 января 2012

У меня есть текстовое поле, за которым следует статическое текстовое поле, и я пытаюсь сделать с ним 2 вещи:

  1. Получить текстовое поле растягиваться горизонтально (не переносить), когда текст длиннее, чемширина поля и
  2. Нажмите на статическое текстовое поле вправо, когда текстовое поле слева от него растянется

Оба поля содержатся в рамке.

У меня оба поля установлены на positionType = float, а текстовое поле установлено на stretchWithOverflow = true, что позволяет тексту переноситься по вертикали, но не растягиваться по горизонтали.

Можно ли достичь 1 и 2 выше?Если да, то как?

Ответы [ 2 ]

9 голосов
/ 25 января 2012

Вместо двух текстовых полей (динамических и статических) вы можете иметь 1 текстовое поле со значением $F{Field} + "statix text".Это, вероятно, решит вашу проблему.Кроме того, вы можете установить свойства "width" и "stretch with overflow" в соответствии с вашими требованиями.

3 голосов
/ 24 января 2012

Ну, это плохие новости!В соответствии с документацией Jaspersoft для полей растяжения невозможно растянуть ширину поля:

"Обычно процесс растяжения относится только к регулировке высоты. При отчете о растяженииэлементы, регулирующие ширину, могут также влиять на ширину страницы и вызывать непредвиденные ошибки во время выполнения (например, усеченная информация может быть распечатана на страницах), поэтому при растяжении элемента его ширина остается неизменной, а его высота определенно увеличивается по порядку.освободить место для всей информации, которая должна быть отображена ". (документация Jaspersoft [v4.5.0], 2011)

Однако решение оригинальной проблемы можно найти здесь благодаря @mdahlman

...