100 компонентов общего назначения библиотеки Delphi5
Окно формы, управляющей подготовкой отчета
Сохраните проект, дав файлу формы имя URep. Это имя автоматически присвоится модулю текста формы и по нему вы сможете впоследствии сослаться на этот модуль.
Откройте командой File | New Form новую форму.
Выполните команду Project | Options, в открывшемся окне Опций проекта перейдите на страницу Forms и в списке Main Form выберите главной текущую форму Form1. Форма FRep должна быть вспомогательной.
Сохраните модуль новой формы, дав его файлу имя URep1. По этому имени вы сможете ссылаться на него из модуля URep.
Перенесите на новую форму компоненты главное меню MainMenu, FontDialog, RichEdit, Edit и Button. Расположите их примерно так, как показано на Рисунок 4.18. В меню введите раздел Отчет с подразделами Показать и Печать, и раздел Шрифт. В свойство Lines компонента RichEdit введите некоторый начальный текст, например, тот, который вы ранее вводили в QRRichText. В окно редактирования Edit введите текст заголовка вашего отчета. Теперь осталось связать друг с другом две формы и написать небольшие команды управления.
Перейдите в модуль формы отчета URep и в его разделе implementation напишите оператор uses URep1; Этот оператор позволит ссылаться из модуля отчета на компоненты главной формы.
Перейдите в модуль главной формы URep1 и в его разделе implementation напишите оператор uses URep; Этот оператор позволит ссылаться из модуля главной формы на компоненты модуля отчета.
В компоненте QRRichText формы URep раскройте выпадающий список в свойстве ParentRichEdit. В этом списке должна появится ссылка на компонент RichEdit формы Form1. Установите это свойство, чтобы связать окна редактирования друг с другом.
В обработчик события OnClick кнопки на форме Form1 внесите оператор FRep.QRLTitle.Caption := Edit1.Text; Он обеспечит пересылку в метку заголовка отчета QRLTitle текста, который пользователь ввел в окно Edit1.
В обработку команды меню Шрифт вставьте операторы if FontDialog1.Execute then RichEdit1.SelAttributes.Assign(FontDialog1.Font); RichEdit1.SetFocus; Эти операторы, обеспечивающие форматирование в окне RichEdit1, уже рассматривались в .
В обработку команды меню Просмотр вставьте оператор FRep.QuickRep1.Preview;
Приложение закончено. Запустите его на выполнение. Отформатируйте текст в окне (см. пример на Рисунок 4.18). Выполните команду Просмотр. Вы увидите окно предварительного просмотpa, показанное на Рисунок 4.19.