 |  |
 |  | |  | |
Алексей Трунтов дата публикации 23-11-2001 15:09 Как создать свое окно предварительного просмотра QuickReport отчетов?
Внятного и простого ответа куцая документация на компонент TQRPreview не дает.
И, хотя ответ на этот вопрос действительно очень прост, мне все же пришлось
потратить некоторое время на его поиски, результаты которых я и привожу.
Создайте пустую форму и поместите на нее объекты TQRPreview, TToolBar и
TImageList. Свойство Align QRPreview установите в alClient. Добавьте на компонент
TToolBar необходимые вам кнопки. В TImageList с помощью ImageList Editor
поместите иконки для кнопок ToolBar`а (я использовал иконки от стандартного
QuickReport окна предпросмотра выдранные в помощью Resource Explorer) и в
свойство ToolBar.Images поместите имя созданного компонента TImageList.
Затем переходим к написанию обработчиков нажатий на кнопки. Основные
используемые свойства : QRPreview.PageNumber - номер текущей просматриваемой
страницы, QRPreview.Zoom - масштаб просмотра отчета и QRPreview.QRPrinter -
объект принтера. Ниже показаны назначения кнопок и обработчики для них :
* Печать отчета
QRPreview.QRPrinter.Print;
* Настройка принтера
QRPreview.QRPrinter.PrintSetup;
* Переход к первой странице
QRPreview.PageNumber:=1;
* Переход к предыдущей странице
QRPreview.PageNumber:=QRPreview.PageNumber-1;
* Переход к следующей странице
QRPreview.PageNumber:=QRPreview.PageNumber+1;
* Переход к последней странице
QRPreview.PageNumber:=QRPreview.QRPrinter.PageCount;
* Масштабирование отчета на 100%
QRPreview.Zoom:=100;
* Масштабирование отчета по ширине страницы
QRPreview.ZoomToWidth;
* Масштабирование отчета по целой странице
QRPreview.ZoomToFit;
Процедуры сохранения, загрузки отчета и подобные можно найти в исходниках
QuickReport`а в файле qrprev.pas (почти все вышеперечисленные обработчики также
взяты из этого файла).
Последнее что требуется сделать - написать такой обработчик события
OnPreview просматриваемого отчета :
frmPreview.QRPreview.QRPrinter:=TQRPrinter(Sender); //frmPreview - форма
frmPreview.Show; // окна предпросмотра
Видно, что окно предпросмотра не содержит ссылок на конкретный компонент
TQuickRep и очевидно что его можно использовать в различных отчетах и
программах. Разумеется всплывающие подсказки на кнопках и прочие красивости
вставляются по вкусу.
В обработчик закрытия окна нужно записать следующие строки :
QRPreview.QRPrinter.ShowingPreview:=false;
QRPreview.QRPrinter.Free;
PS. Замечания и исправления принимаются по адресу shadowj@yandex.ru
Алексей Трунтов
Специально для Королевства Delphi
[TImage] [TToolBar] [QuickReport] [Режим preview]
Обсуждение материала [ 16-12-2003 14:45 ] 6 сообщений |
|
|  |  |  | |
 |  |
Время на сайте: GMT минус 5 часов
Если вы заметили орфографическую ошибку на этой странице, просто выделите ошибку мышью и нажмите Ctrl+Enter.
Функция может не работать в некоторых версиях броузеров.
©
При использовании любых материалов «Королевства Delphi»
необходимо указывать источник информации.
Перепечатка авторских статей возможна только при согласии всех авторов и администрации сайта.
Все используемые на сайте торговые марки являются
собственностью их производителей.