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

Перенос событий из QuickReport в FastReport в Delphi

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

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

Подтвержденный ответ

Fast Report предоставляет единицу ConverterQR2FR.pas, которую можно использовать для преобразования отчетов QuickReport в FastReport. Однако эта единица не назначает события объектов автоматически. Чтобы перенести события, вам придется сделать это вручную.

В QuickReport вы могли устанавливать события для объектов, таких как TQrLabel, и эти события находились в коде единицы Delphi. В FastReport вы можете сделать то же самое, но событие находится внутри отчета FastReport, а не в единице Delphi (FastReport включает в себя Pascal-скриптовый движок). Из-за этого вам, скорее всего, придется скопировать свои события вручную из кода единицы в скрипт FastReport.

Ниже приведен пример кода на Object Pascal (Delphi), демонстрирующий, как это можно сделать:

// Создаем экземпляры QuickReport и FastReport
Qr := TQrReport.Create(nil);
Fr := TfrxReport.Create(nil);

// Назначаем метод события для объекта QuickReport
Qr.Label1.OnClick := @QrLabel1Click;

// Определяем метод события для объекта QuickReport
procedure TForm1.QrLabel1Click(Sender: TObject);
begin
  // Ваш код здесь
end;

// Создаем экземпляр конвертера QuickReport в FastReport
Conv := TConverterQr2Fr.Create(nil);
Conv.Source := Qr;
Conv.Target := Fr;
Conv.Convert;

// Назначаем метод события для объекта FastReport
Fr.Script1.AddCode('procedure TfrxReport1.Script1Label1Click(Sender: TObject); begin // Ваш код здесь end;');
Fr.Script1.Assign('Label1.Click', 'Script1Label1Click');

// Сохраняем отчет FastReport в файл
Fr.SaveToFile('converted_fromQR.fr3');

// Освобождаем ресурсы
Qr.Free;
Fr.Free;
Conv.Free;

Альтернативный ответ

При переносе с QuickReport на FastReport стоит рассмотреть другие способы достижения того же результата, которые предоставляет FastReport. Возможно, вам не придется использовать события так же, как в QuickReport.

Заключение

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

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

Перенос событий из QuickReport в 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-01-29 02:22:01/0.0032479763031006/0