Вставка нижней границы при достижении конца листа

отредактировано 12:48 Раздел: FastReport 3.0
Как организовать вставку нижней границы при достижении конца листа.

Есть групповой бенд и детальный. В детальном бенде границы только вертикальные. В нижнем групповом бенде элемент "линия" как бы является нижней границей детального бенда(по сути закрывает таблицу). Но проблема в том, что при переносе детального бенда между страницами, на предидущей странице таблица как бы оторвана. Нет завершающей горизонтальной линии. Как ее сделать?

Комментарии

  • отредактировано 12:48
    EvgeniyI написал:
    В детальном бенде границы только вертикальные. В нижнем групповом бенде элемент "линия" как бы является нижней границей детального бенда(по сути закрывает таблицу).
    А что мешает туда же и горизонтальные добавить?
    И вообще, лучше выровнять все мемки и границы выставить у них, все 4.
  • отредактировано 12:48
    написал:
    А что мешает туда же и горизонтальные добавить?

    В детальном бенде границы только вертикальные. В нижнем групповом бенде элемент "линия" как бы является нижней границей детального бенда(по сути закрывает таблицу). Это разве не понятно? Объясню по-другому. В таблице линиями разделяются только колонки, а также линии по границе всей таблицы. Если добавить горизонтальную линию в детальный бенд, то получится просто таблица в которой каждая ячейка со всеми границами, что есть не правильно исходя из задуманного вида.
    написал:
    И вообще, лучше выровнять все мемки и границы выставить у них, все 4.
    Не понятно к чему это?
  • Andrew_ShAndrew_Sh г.Минск
    отредактировано September 2005
    EvgeniyI написал:
    Как организовать вставку нижней границы при достижении конца листа.

    Есть групповой бенд и детальный. В детальном бенде границы только вертикальные. В нижнем групповом бенде элемент "линия" как бы является нижней границей детального бенда(по сути закрывает таблицу). Но проблема в том, что при переносе детального бенда между страницами, на предидущей странице таблица как бы оторвана. Нет завершающей горизонтальной линии. Как ее сделать?
    Попробуйте так. На Detail поместите линию. В OnBeforePrint для этой линии напишите так:
      Line1.Visible := Engine.FreeSpace < MIN_SPACE; 
    

    где MIN_SPACE - это минимально допустимое число пикселей от текущей позиции до конца страницы, при котором линия печататься не будет. Замените MIN_SPACE на нужное значение. Как правило значение для MIN_SPACE должно быть примерно равным высоте вашего Detail, а если на странице есть PageFooter, то MIN_SPACE увеличивается на его высоту.
      Line1.Visible := Engine.FreeSpace < Detail1.Height; 
    

    или
      Line1.Visible := Engine.FreeSpace < (Detail1.Height+PageFooter1.Height); 
    
  • отредактировано 12:48
    EvgeniyI написал:
    EvgeniyI написал:
    И вообще, лучше выровнять все мемки и границы выставить у них, все 4.
    Не понятно к чему это?
    Это к тому, что рисовать таблицу линиями утомительно, гораздо легче и правильнее делать ее границами мэмок. А дальше использовать код Andrew_Sh, но уже для границ мэмок.
  • waikwaik Иваново
    отредактировано 12:48
    Stranger написал:
    Stranger написал:
    Stranger написал:
    И вообще, лучше выровнять все мемки и границы выставить у них, все 4.
    Не понятно к чему это?
    Это к тому, что рисовать таблицу линиями утомительно, гораздо легче и правильнее делать ее границами мэмок. А дальше использовать код Andrew_Sh, но уже для границ мэмок.
    Человек не хочет горизонтальных линий (я тоже иногда предпочитаю без них - если мелкий шрифт в детальке то получается слишком много полос)

    С линией хороший вариант, но бывает что немного слетает в вертикале. Я делал с помощью ещё одной мемки-подложки, с одной нижней чертой, которая показывается при последней строке на странице.

Оставить комментарий

Многофункциональный текстовый редактор. Чтобы отредактировать стиль параграфа, нажмите TAB, чтобы перейти к меню абзаца. Там вы можете выбрать стиль. По умолчанию не выбран ни один стиль. Когда вы выберете текст, появится встроенное меню форматирования. Нажмите TAB, чтобы войти в него. Некоторые элементы, такие как многофункциональные вставки ссылок, картинок, индикаторов загрузки и сообщений об ошибок могут быть вставлены в редактор. Вы можете перемещаться по ним, используя стрелки внутри редактора и удалять с помощью клавиш delete или backspace.