Borland C++ Builder

Предварительный просмотр отчетов


В некоторых случаях требуется предварительный просмотр отчетов на этапе выполнения. Для этой цели используется метод Preview() компонента TQuickReport. При его выполнении на экране появится стандартная форма просмотра, изображенная на рис. 8.

Если внешний вид стандартной формы просмотра по какой-либо причине вас не устраивает, можно создать свою форму предварительного просмотра с помощью компонента QRPreview. Этот компонент обладает свойствами PageNumber и Zoom, которые можно использовать для просмотра произвольной страницы отчета в произвольном масштабе.

Для создания собственного окна предварительного просмотра следует на вновь созданной форме разместить компонент QRPreview и набор элементов управления (например, кнопок) для перемещения между страницами, изменения масштаба, печати и др. Далее следует написать код, аналогичный приведенному ниже примеру:

void __fastcall TForm1::ShowPreview()


{


Form2->ShowModal();


}


void __fastcall TForm1::Button1Click(TObject *Sender)


{


QRPrinter->OnPreview=ShowPreview;


Form4->QuickReport1->Preview();


Form2->ShowModal();


}

Кроме того, нужно внести прототип функции ShowPreview() в соответствующий h-файл:

__published: // IDE-managed Components


TButton *Button1;


void __fastcall Button1Click(TObject *Sender);


void __fastcall ShowPreview(void);

Приведенный пример кода показывает, как связать созданную форму с компонентом QuickReport. Эта связь достигается написанием обработчика события QRPrinter->OnPreview. Это событие не имеет прямого отношения к компоненту QuickReport, иначе нужно было бы связывать все созданные отчеты с окном просмотра. Использование события объекта QRPrinter обычно означает написание общего для всех отчетов обработчика события, после чего окно просмотра можно использовать для всех имеющихся в приложении отчетов.

Более подробно о компонентах, используемых для создания отчетов, можно прочесть в книге "Введение в Borland C++ Builder" Н.Елмановой и С.Кошеля, вышедшей в июле этого года в издательстве "Диалог-МИФИ".

Координаты автора: Учебный центр Interface Ltd., тел. (095)135-55-00, 135-25-19,

e-mail:



Содержание раздела