"Создание события 'After Print' для полосы данных в FastReport с помощью Delphi"Delphi , Базы данных , ОтчетыСоздание события "After Print" для полосы данных в FastReport с помощью Delphi При работе с FastReport в Delphi может возникнуть необходимость обработать событие "After Print" для полосы данных (MasterData Band). По умолчанию, для этого можно использовать Pascal-скрипт, но иногда требуется обработать это событие непосредственно в основном форме Delphi. В этой статье мы рассмотрим, как это сделать. Проблема У вас есть полоса данных (MasterData Band) в вашем отчете FastReport, и вы хотите обработать событие "After Print" в основном форме Delphi, а не в Pascal-скрипте. Решение FastReport предоставляет несколько вариантов для обработки событий отчета во время печати. Один из них - использовать события "AfterPrint" и/или "BeforePrint", которые будут вызываться каждый раз, когда компонент будет печататься, передавая компонент в качестве параметра. Если вам нужно получить доступ к другому компоненту, чем тот, который передается в событиях, вы можете использовать FindComponent, чтобы получить компонент для текущей страницы, которая печатается. Чтобы получить доступ к функциям внутри отчета, вы можете вызвать "Calc" с именем функции в качестве параметра. Еще один вариант - использовать событие "GetValue", которое будет вызываться каждый раз, когда переменная оценивается, передавая имя переменной и переменную для значения, что позволяет вам вернуть любое значение, которое вам нужно. Давайте рассмотрим пример кода, который демонстрирует, как обработать событие "AfterPrint" для полосы данных в основном форме Delphi:
В этом примере мы обрабатываем событие "AfterPrint" для отчета frxReport1. Если Sender (компонент, который был напечатан) - это Masterdata1 (определенная полоса данных), мы получаем доступ к компоненту Sup_Page на текущей странице и устанавливаем его текст равным "Контент на странице" и текущему номеру страницы (полученному с помощью Calc(' Альтернативный ответ Если вы хотите использовать собственную функцию Delphi в FastReport 4, вы можете сделать это, объявив функцию в основном форме Delphi и использовав ее в отчете с помощью синтаксиса {DelphiFunction(Параметры)}. Например:
В отчете вы можете использовать эту функцию следующим образом:
Заключение В этой статье мы рассмотрели, как обработать событие "After Print" для полосы данных в FastReport с помощью Delphi. Используя события "AfterPrint" и "BeforePrint", а также методы FindComponent и Calc, вы можете эффективно работать с компонентами и функциями отчета во время печати. Кроме того, мы рассмотрели альтернативный способ использования собственных функций Delphi в FastReport. Описание: Статья описывает, как обработать событие "After Print" для полосы данных в FastReport с помощью Delphi, не используя Pascal-скрипт, а обрабатывая это событие непосредственно в основном форме Delphi. Комментарии и вопросыПолучайте свежие новости и обновления по Object Pascal, Delphi и Lazarus прямо в свой смартфон. Подпишитесь на наш Telegram-канал delphi_kansoftware и будьте в курсе последних тенденций в разработке под Linux, Windows, Android и iOS Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
|
||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |