Руководство VisiCAR™ Developer
<< 1.7 Конструктор выражений Оглавление 1.9 Языковые средства >>

1.8 Диалоговые формы

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

Для разработки диалоговых форм используется тот же дизайнер, что и для страниц отчета. Для создания новой формы служит кнопка панели инструментов дизайнера - она добавляет в отчет новую страницу,

при переключении на которую меняется содержимое панели "Объекты":

Рис. 1.43.

 

При переключении на страницу с формой диалога рабочее поле дизайнера изменяется - теперь это форма, на которой можно размещать объекты - элементы управления:

Рис. 1.44.

 

В отчете может быть несколько диалоговых форм, они будут выполняться по порядку перед построением отчета.

 Элементы управления (объекты)

Подключены следующие элементы управления:

Таблица 1.11:  Элементы управления

Иконка

Название

Описание

 

Label

Строка текста

 

Edit

Предназначен для ввода строки текста с клавиатуры

 

Memo

Предназначен для ввода нескольких строк текста

 

Button

Кнопка

 

CheckBox

Флажок

 

RadioButton

Круглая кнопка - аналог переключателя с зависимой фиксацией

 

ListBox

Список строк предназначен для выбора одного из значений

 

ComboBox

Выпадающий список строк

 

DateEdit

Выпадающий список дат

Все объекты имеют ряд общих свойств и методов:

 Общие свойства

Integer Color

Цвет фона объекта

Boolean Enabled

Разрешает или запрещает работу объекта

String Font.Name

Имя шрифта, которым будет выведен текст объекта

Integer Font.Size

Размер шрифта

Integer Font.Style

Стиль шрифта. Набор констант fsBold, fsItalic, fsUnderline

Integer Font.Color

Цвет шрифта

Integer Height

Высота объекта

Integer Left

Координата Х левого верхнего угла объекта

String Name

Имя объекта

Integer Top

Координата Y левого верхнего угла объекта

Boolean Visible

Видимость объекта

Integer Width

Ширина объекта

 Общие методы

Hide()

Аналогично установке Visible := False

Параметры:

Не передаются.

Возвращаемые значения:

Нет.

 

SetFocus()

Передает фокус ввода элементу управления

Параметры:

Не передаются.

Возвращаемые значения:

Нет.

 

Show()

Аналогично установке Visible := True

Параметры:

Не передаются.

Возвращаемые значения:

Нет.

 

Рассмотрим каждый объект в отдельности:

  Label

Назначение: вывод поясняющей надписи

Рис. 1.45.

 

Свойства

Integer Alignment

Выравнивание строки текста внутри рамок объекта. Одно из значений taLeftJustify, taRightJustify, taCenter.

Boolean AutoSize

Установка ширины объекта равной максимальной ширине имеющегося в нем текста.

String Caption

Собственно строка текста.

Boolean WordWrap

Перенос слов внутри объекта. При этом свойство AutoSize должно быть False.

Методы.

Нет.

  Edit

Назначение: ввод строки текста с клавиатуры

Рис. 1.46.

 

Свойства

Boolean ReadOnly

Запрещает модифицировать строку текста.

String Text

Текст, который будет показан в элементе управления по умолчанию.

Методы

Нет.

  Memo

Назначение: ввод нескольких строк текста с клавиатуры.

Рис. 1.47.

 

Свойства

String Lines

Строки текста, который будет выведен по умолчанию. К свойству можно обращаться по индексу: Memo1.Lines[0].

Integer Lines Count

Количество строк текста.

Boolean ReadOnly

Запрещает модифицировать текст.

String Text

Строки текста, представленные в виде одной строки (с символами CR+LF).

Методы

Lines.Add(String)

Добавляет строку.

Параметры:

String - добавляемая строка.

Возвращаемые значения:

Нет.

 

Lines.Clear()

Очищает строки.

Параметры:

String - добавляемая строка.

Возвращаемые значения:

Нет.

 

Lines.Delete(Integer)

Удаляет строку с данным индексом.

Параметры:

Integer - индекс удаляемой строки.

Возвращаемые значения:

Нет.

 

  Button

Назначение:

Рис. 1.48.

 

Свойства

String Caption

Заголовок кнопки.

Integer ModalResult

Определяет, надо ли завершать работу диалогового окна при нажатии на кнопку и какой результат при этом возвращать. Предназначено для автоматического закрытия окна диалога при нажатии на кнопку. Обычно кнопка "ОК" имеет ModalResult = mrOk, кнопка "Отмена" - mrCancel. Кроме того, аналогично свойство имеется у самой формы диалога. Если присвоить ему что-либо, отличное от mrNone, диалог завершит работу.

Методы

Нет.

  CheckBox

Назначение: представляет собой флажок, который может быть в двух состояниях: включенном и выключенном. Около флажка выводится поясняющая надпись.

Рис. 1.49.

 

Свойства

Integer Alignment

Позиция надписи по отношению к флажку. Одна из констант taLeftJustify, taRightJustify.

String Caption

Поясняющая надпись.

Boolean Checked

Состояние флажка (включен/выключен).

Методы

Нет.

  RadioButton

Назначение: представляет собой аналог переключателя с зависимой фиксацией. По этой причине в одиночку не применяется.

Рис. 1.50.

 

Свойства

Integer Alignment

Позиция надписи по отношению к переключателю. Одна из констант taLeftJustify, taRightJustify.

String Caption

Поясняющая надпись.

Boolean Checked

Состояние переключателя (включен/выключен).

Методы

Нет.

  ListBox

Назначение: представляет собой список строк с возможностью выбора одной из них.

Рис. 1.51.

 

Свойства

String Items

Строки текста. К свойству можно обращаться по индексу: ListBox1.Items[0].

Integer ItemIndex

Номер выбранной строки.

Integer Items.Count

Количество строк.

Методы

Items.Add(String)

Добавляет строку.

Параметры:

String - добавляемая строка.

Возвращаемые значения:

Нет.

 

Items.Clear()

Очищает строки.

Параметры:

Не паредаются.

Возвращаемые значения:

Нет.

 

Items.Delete(Integer)

Удаляет строку с данным индексом.

Параметры:

Integer - индекс удаляемой строки.

Возвращаемые значения:

Нет.

 

  ComboBox

Назначение: представляет собой выпадающий список строк с возможностью выбора одной из них.

Рис. 1.52.

 

Свойства

String Items

Строки текста. К свойству можно обращаться по индексу: ComboBox1.Items[0].

Integer ItemIndex

Номер выбранной строки.

Integer Items.Count

Количество строк.

Integer Style

Тип элемента. Одно из значений csDropDown, csDropDownList, csLookup.

String Text

Выбранное значение.

Методы

Items.Add(String)

Добавляет строку.

Параметры:

String - добавляемая строка.

Возвращаемые значения:

Нет.

 

Items.Clear()

Очищает строки.

Параметры:

Не паредаются.

Возвращаемые значения:

Нет.

 

Items.Delete(Integer)

Удаляет строку с данным индексом.

Параметры:

Integer - индекс удаляемой строки.

Возвращаемые значения:

Нет.

 Диалоговая форма

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

Таблица 1.12:  Свойства формы

Свойство

Свойство по умолчанию

Описание

BorderStyle

bsDialog

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

Caption

Заголовок окна

Color

clBtnFace

Цвет окна

Height

Высота окна

Left

Позиция X окна

OnActivate

Обработчик события, вызывающийся после инициализации всех элементов окна

Position

poScreenCenter

По центру экрана либо по заранее заданным координатам Left, Top

Top

Позиция Y окна

Type

ptDialog

Тип страницы - диалоговая форма либо страница отчета

Width

Ширина окна

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

 Передача информации в отчет

Значения, введенные в элементы управления, часто требуется тем или иным образом передать в отчет. Существует два способа это сделать.

С использованием переменных

Для передачи информации от элемента управления в отчет используются переменные.

Например, необходимо текст из элемента управления Edit отобразить в заголовке отчета.

Рис. 1.53.

 

Это можно сделать следующим образом: в обработчике события OnClick кнопки OK написать:

begin

TitleText := Edit1.Text;

end

В заголовок отчета при этом надо поместить объект "Текст" с содержимым

[TitleText]:

Рис. 1.54.

Прямое обращение

Во многих случаях проще использовать для передачи введенного значения в отчет прямое обращение к элементу управления. При этом промежуточных переменных заводить не требуется:

Рис. 1.55.

 



<< 1.7 Конструктор выражений Оглавление 1.9 Языковые средства >>
© ООО "Кигли", 2002-2004