Подбор ширины ячеек

       На предыдущем рисунке видно, что FastReport автоматически подбирает ширину ячеек таким образом, чтобы уместились самые длинные строки. В некоторых случаях это нежелательно – при очень длинных строках таблица будет смотреться некрасиво. Что можно сделать в нашем случае? Рассмотрим 3 способа управления размерами ячеек.

 

       Первый вариант – вставить разрыв строки в текст объекта с промежуточными итогами, т.е. поместить в него строку:

 

Итого

за [Value]

 

       Мы увидим, что теперь таблица выглядит гораздо лучше:

 

 

       Однако такой способ можно использовать далеко не всегда – что, если сами значения строк/столбцов достаточно длинные, ведь их нельзя исправить вставкой разрыва строки вручную. Второй способ - использовать свойства MinWidth и MaxWidth (минимальная и максимальная ширина ячейки соответственно). Оба этих свойства доступны только через инспектор объектов.

 

       По умолчанию значение MinWidth = 0, MaxWidth = 200. Этого достаточно для большинства случаев. Вы можете установить свои значения, если к оформлению таблицы предъявляются особенные требования.

 

       Так, в нашем примере можно задать MinWidth = MaxWidth = 50. Это означает, что ширина ячейки таблицы должна быть в любом случае равной 50 пикселам. Если ячейка меньше, она "дотягивается" до значения MinWidth, если больше – ее ширина фиксируется на уровне MaxWidth, а текст в ячейке переносится по словам. На нашем примере это выглядит так:

 

_img212

 

       Наконец, третий способ - установить самому нужные размеры ячеек. Для этого нужно отключить свойство "Авто-размер" в редакторе объекта (или AutoSize в инспекторе). Теперь размер всех элементов таблицы можно менять вручную. Сделать это очень просто - при наведении мыши на элементы таблицы указатель мыши меняет форму, предлагая изменить ширину или высоту. Вот пример того, что можно сделать:

 

clip0169

 

       Учтите, что при отключении свойства "Авто-размер" перестает работать подбор размера ячеек. Если вы установили недостаточную ширину ячейки, при печати текст может быть обрезан:

 

 

       В таком случае просто увеличьте размер соответствующих ячеек.