Компоненты TQRRichText и TQRDBRichTex
Компонент TQRRichText похож на компонент TQRMemo, но только текст представляется здесь в формате RTF, позволяя более гибко его форматировать.
Компонент TQRDBRichText похож с компонентом TQRRichText, только данные берутся из поля БД. Для задания этого поля необходимо связать с помощью свойств DataSet и DataField соответствующий НД.
Интересное свойство имеет компонент QRRichText — ParentRichEdit. Это свойство указывает на обычный компонент RichEdit, текст из которого автоматически передается в компонент QRRichText. Вы можете, например, ввести в свое дополнение компонент RichEdit и предоставить пользователю возможность вводить в него нужный текст, форматируя соответствующим образом слова и абзацы. Этот текст автоматически переносится в отчет — в размещенный в нем компонент QRRichText.
Пример: Проиллюстрируем работу компоненту TQRDBRichText. Наш отчет будет характеристикой о сотруднике из БД. Для этого в дополнение необходимо поместить компонент TDBRichText и связать его с полем PRIM. Вид дополнению показан на рисунке 20.
Рисунок 20. Дополнение, которое демонстрирует работу компоненту TQRDBRichText
Для создания отчета на форму поместить следующие компоненты:
TQRBand1 типа rbTitle. На нем расположим компоненты TQRLable1, TQRLable2, TQRLable3.
TQRDBText1 (DataSet = Form1.Table1, DataField = FIO), TQRDBText2 (DataSet = Form1.Table1, DataField = PROF).
TQRDBTRichEdit (DataSet = Form1.Table1, DataField = PRIM). В свойстве AutoStretch компоненту TQRDBRichText необходимо указать значение True для того, чтобы при необходимости вертикальный размер компоненту изменялся и, если будет нужно, компонент смог перейти на следующую страницу.
Вид отчета на этапе конструирования показан на рис.21.
Рисунок 21. Отчет на этапе конструирования
После выполнения программы отчет должен содержать следующее:
Рисунок 22. Отчет в окне предыдущего пересмотра
Для иллюстрации работы компоненту TQRRichText создадим отчет такими же, как для компоненту TQRDBTRichEdit. Отличие лишь в том, что данные будут пересылаться из компоненту TEdit, потому для кнопки Button1 необходимо написать следующий обработчик события OnClick :
procedureTForm1.Button1Click(Sender: TObject);
begin
Form2.QRLabel5.Caption:=Edit1.Text;
Form2.QRLabel6.Caption:=Edit2.Text;
Form2.QRLabel7.Caption:=Edit3.Text;
Form2.QuickRep1.Preview;
end;
В свойстве ParentRichEdit компоненту QRRichText необходимо установить ссылку на компонент TRichEdit дополнению для того, чтобы связать окна редактирования друг с другом.
Компонент TQRShape
Компонент TQRShape используется для создания обрамлений. Он позволяет вывести в отчет самую простую геометрическую фигуру, которая определяется свойством Shape, :
qrsCircle - круг или эллипс, вписанный в контур компонента.
qrsHorLine - горизонтальная линия посредине компонента.
qrsRectangle - прямоугольник, совпадающий с контуром компонента.
qrsRightAndLeft - вертикальные линии по правому и левому пределу компонента.
qrsTopAndBottom - горизонтальные линии по верхнему и нижнему пределу компонента.
qrsVertLine - горизонтальная линия посредине компонента.
Дата добавления: 2016-02-27; просмотров: 786;