Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Курс лекций по дисциплине Объектно-ориентирован...doc
Скачиваний:
33
Добавлен:
01.07.2025
Размер:
14 Мб
Скачать
☆

5.5. Основные свойства компонентов

Aligment - выравнивание текста внутри компонента.

Font - параметры шрифта.

Frame - оформление рамки вокруг отдельного элемента.

Событие OnPrint возникает непосредственно перед выводом компонента. Процедура обработки этого события имеет два параметра: Sender (имя компонента) и Value (выводимое значение, которое в процедуре обработки можно отредактировать, например, Value:=Value+' тыс.руб/).

Для формирования выражения для свойства Expression обычно используется мастер выражений, вызываемый кнопкой с троеточием. В окне мастера имеются кнопки: Database Field (список полей набора), Function (список функций по категориям), Variable (список системных переменных), Clear (очистка окна с текстом выражения), Validate (проверка выражения), арифметические, логические опера­ции и операции сравнения.

Пример создание простого отчета, который содержит некоторый текст и рисунки, имеет нижние колонтитулы с названием отчета и номером страницы. Кроме того, мы хотим, чтобы на первой странице над нижним колонтитулом было написано «Тюмень» и дата создания отчета.

1. Начните новый проект

2. Перенесите на форму компонент QuickRep и в его свойстве Bands установите в true подсвойство HasDetail — основная полоса, в которой вы будете писать текст, и подсвойство HasPageFooter — полоса нижних колонтитулов.

3. Перенесите в верхнюю часть полосы детализации компонент QRImage. Щелкните на кнопке с многоточием около его свойства Picture и загрузите в него какую-нибудь картинку.

4. Перенесите в полосу детализации компонент QRLabel, расположите его под рисунком и задайте заголовок отчета в свойстве Caption. Установите свойство Alignment в taCenter и AlignToBand в true. Это обеспечит размещение заголовка в центре страницы по горизонтали. Назовите эту метку QRLTitle.

5. Разместите примерно в центре страницы компонент QRRichText, в котором будет писаться основной текст. Напишите текст «Курсовой проект» в свойстве Lines.

6. Перенесите на форму компонент QRSubDetail. Установите ее свойство AligneToBottom в true. Это обеспечит размещение полосы внизу страницы.

7. Разместите на полосе Sub Detail компонент QRLabel, написав в его свойстве Caption текст «Тюмень».

8. Разместите правее метки компонент QRSysData. В его свойстве Data установите значение qrsDate. Этот компонент будет отображать дату создания отчета.

9. Перенесите на полосу «Page Footer» компонент QRLabel, задайте в его свойстве Caption текст (например, «Отчет по теме «Использование форм и отчетов»»). Установите свойство Alignment в taLeftJustify и AlignToBand в true. Это обеспечит выравнивание метки по левому краю страницы. Установите в свойстве Frame подсвойство DrawTop в true. Это обеспечит появление линии, отделяющей колонтитул от текста.

10. Перенесите на полосу «Page Footer» компонент QRSysData. В его свойстве Data установите значение qrsPageNumber. Этот компонент будет отображать номер страницы. Установите свойство Alignment в taRightJustify и AlignToBand в true. Это обеспечит выравнивание номера по правому краю страницы.

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

1. Дайте имя FRep вашей форме (свойство Name). По этому имени вы потом сможете ссылаться на ее компоненты.

2. Проверьте, что свойство Visible этой формы установлено в false. Это необходимо сделать, так как форма в дальнейшем должна быть невидимой.

3. Сохраните проект, дав файлу формы имя URep. Это имя автоматически присвоится модулю текста формы, и по нему вы сможете впоследствии сослаться на этот модуль.

4. Откройте командой File | New Form новую форму.

5. Выполните команду Project | Options, в открывшемся окне Опций проекта перейдите на страницу Forms и в списке Main Form выберите главной текущую форму Forml. Форма FRep должна быть вспомогательной. Если вам не совсем понятны эти действия, в котором поясняется создание приложений с несколькими формами.

6. Сохраните модуль новой формы, дав его файлу имя URepl. По этому имени вы сможете ссылаться на него из модуля URep.

7. Перенесите на новую форму компоненты главное меню MainMenu, FontDialog, RichEdit, Edit и Button. В меню введите раздел Отчет с подразделами Показать и Печать, и раздел Правка с подразделом Шрифт. В свойство Lines компонента RichEdit введите некоторый начальный текст, например, тот, который вы ранее вводили в QRRichText. В окно редактирования Edit введите текст заголовка вашего отчета.

Теперь осталось связать друг с другом две формы и написать небольшие команды управления.

8. Перейдите в модуль формы отчета URep и в его разделе implementation напишите оператор

uses URepl;

Этот оператор позволит ссылаться из модуля отчета на компоненты главной формы.

9. Перейдите в модуль главной формы URepl и в его разделе implementation напишите оператор

uses URep;

Этот оператор позволит ссылаться из модуля главной формы на компоненты модуля отчета.

10. В компоненте QRRichText формы URep раскройте выпадающий список в свойстве ParentRichEdit. В этом списке должна появится ссылка на компонент RichEdit формы Forml. Установите это свойство, чтобы связать окна редактирования друг с другом.

11. В обработчик события OnClick кнопки на форме Forml внесите оператор FRep.QRLTitle.Caption:=Editl.Text;

Он обеспечит пересылку в метку заголовка отчета QRLTitle текста, который пользователь ввел в окно Editl.

12. В обработку команды меню Шрифт вставьте операторы

if FontDialogl.Execute then RichEdit1.SelAttributes.Assign(FontDialogl.Font); RichEditl.SetFocus;

13. В обработку команды меню Просмотр вставьте оператор FRep.QuickRepl.Preview;

14. В обработку команды меню Печать вставьте оператор FRep.QuickRepl.Print;

15. Запустите его на выполнение. Отформатируйте текст в окне. Выполните команду Просмотр. Вы увидите окно предварительного просмотра. В этом окне вы можете просматривать отчет, изменяя размер изображения, переходить со страницы на страницу, сохранять отчет в файле, проводить установку принтера, печатать отчет, сохранять его в файле, чтобы в каких-то будущих сеансах можно было загрузить его опять из файла.

Контрольные вопросы:

  1. Назовите методы печати.

  2. Перечислите объекты, используемые при разработке отчета.

  3. Какие основные свойства можно выделить у компонента QuickRep?

  4. Перечислите свойства и методы объекта Printer.

  5. Приведите пример печати с помощью функций файлового ввода/вывода.