Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
KANSoftWare

Автоматическая адаптация колонок в FastReport при смене ориентации страницы

Delphi , Базы данных , Отчеты

При работе с отчетами в FastReport иногда возникает необходимость автоматически адаптировать колонки под новую ширину страницы при смене ориентации. В этом материале мы рассмотрим, как достичь этой цели в Delphi.

Проблема

Пользователь хочет, чтобы при изменении ориентации страницы все колонки headers и данные автоматически подстраивались под новую ширину страницы. Однако в FastReport нет явного механизма якорения, и автору не ясно, как это сделать во время выполнения, не говоря уже о захвате события изменения ориентации страницы.

Решение

Хотя FastReport по умолчанию примагничивает полосы к границам страницы, что позволяет им подстраиваться под новую ширину страницы, пользователь хочет, чтобы объекты frxMemoview также перемещались и изменяли свой размер в соответствии с новым размером страницы. Для этого можно использовать событие beforeprint отчета, чтобы пересчитать и переместить или изменить размер компонентов отчета.

Однако более простым способом построения отчета, который можно печатать как в портретном, так и в альбомном режиме, является создание макета для портрета и одного для альбомной ориентации. Перед загрузкой отчета можно показать диалог настройки принтера и в зависимости от ориентации загрузить макет портрета или альбомной ориентации.

Пример кода

Вот пример, показывающий, как изменить настройки страницы отчета в коде:

var
  Page: TfrxReportPage;
begin
  // Получаем первый лист отчета (индекс [1], [0] - страница данных)
  Page := TfrxReportPage(frxReport1.Pages[1]);

  // Изменяем размер страницы
  Page.PaperSize := DMPAPER_A2;

  // Изменяем ориентацию страницы
  Page.Orientation := poLandscape;
end;

Вывод

При работе с отчетами в FastReport важно уметь адаптировать колонки под новую ширину страницы при смене ориентации. Используя событие beforeprint отчета или создавая отдельные макеты для разных ориентаций, можно добиться автоматической адаптации колонок в зависимости от выбранной пользователем ориентации страницы.

Создано по материалам из источника по ссылке.

Материал описывает, как автоматически адаптировать колонки в отчетах FastReport при смене ориентации страницы, используя Delphi.


Комментарии и вопросы

Получайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.


:: Главная :: Отчеты ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-12-22 20:14:06
2025-06-15 23:04:29/0.0034229755401611/0