Вызов редактора форм из командной строки с целью создания формы: create form <имя формы> При этом создаётся файл <имя формы>. scx .
Редактирование формы: modify form <имя формы> При этом открывается окно Form Designer с панелями Form Controls и Properties . Прежде всего необходимо сформировать среду окружения (выпадающее меню Data Environement при клике на окне формы) для формы: добавить таблицы и связать их между собой.
Созданная форма сразу готова для выполнения (меню Form / Run Form или кнопка «!»). Запуск формы на выполнение из командной строки:
do form <имя формы>
read events
Обращение к объектам текущей формы:
thisform. <имя объекта> . <имя свойства> = <значение>
Основные поля, методы или свойства формы и связанные с ними типичные реакции:
Unload Event |
закрытие формы |
clear events |
Init Event |
инициализация формы |
устанавливаются нач. знач. объектов формы |
Caption |
заголовок формы |
уже установлен |
Основные объекты формы:

мастер помогает установить параметры объектов |
1. Поле комментария ( Label ) |
текстовая информация (заголовки) |
2. Текстовое поле (Text Box) |
поле ввода и вывода данных с форматом и маской |
3. Поле редактирования (Edit Box) |
поле для редактирования символьных полей большого размера и memo -полей |
4. Кнопка (Command Button) |
одиночная кнопка с надписью или рисунком |
5. Группа кнопок (Command Group) |
заданное количество кнопок в одном контейнере* |
6. Группа переключателей (Option Group) |
Кнопки с зависимой фиксацией* |
7. Флажок (Check Box) |
Принимает значение 0 или 1 |
8. Поле со списком ( Combo Box ) |
Данные вводятся или выбираются из вып. списка |
9. Список выбора (List Box) |
Отображение многостолбцовых данных со скролл. |
10. Катушка (Spinner) |
инкремент/декремент с заданным шагом |
11. Табличное представление (Grid) |
если не хочется использовать BROWSE |
12. Изображение (Image) |
поддерживаются все известные графич. форматы |
13. Таймер ( Timer ) |
отображение системных часов или обновление данных через заданный интервал |
14. Рамка вкладок (Page Frame) |
составной объект из заданного числа страниц* |
15. Элем . отображения ActiveX (ActiveX Bound Control, OLE Bound Control) |
подключение внешних элементов управления для отображения значений поля типа General |
16. Элем. управления ActiveX |
создание ActiveX- объекта |
17. Линия, Контур ( Line , Shape ) |
линия, прямоугольник, эллипс, окружность |
18. Контейнер ( Container ) |
собирает объекты для однотипного управления |
19. Разделитель ( Separator ) |
разделитель кнопок |
20. Гиперссылка ( Hyperlink ) |
|
|
чтобы проникнуть внутрь контейнера для редактирования его объектов следует выбрать в выпадающем меню опцию « Edit », щёлкнув по объекту-контейнеру правой кнопкой мыши.
С помощью команд меню Format (/ Align , / Size ) можно сделать объекты одинакового размера, выровнять их относительно друг друга или формы, сделать равными расстояния между ними и т.п.

|
Для каждого объекта существуют свойства и методы, управляющие его внешним отображением (вкладка Layout в окне Properties ), взаимодействием с источником данных для этого объекта (вкладка Data ), методами обработки событий от других элементов или связанных с действиями пользователя (вкладка Methods ), прочие свойства (вкладка Other ).
В выделенном на рисунке окне может работать построитель выражений (кнопка f x ) для определения значения свойства (если в этом есть необходимость). Если для метода указано [ Default ] , то выполняются действия по умолчанию для каждого из методов. Если требуется ввести собственные действия, после двойного щелчка открывается окно для ввода программы, назначаемой данному методу, помимо действий, выполняемых по умолчанию. |
Основные методы объектов формы и связанные с ними типичные реакции:
Caption |
текст для Label и Button |
конечно, можно менять программно, например this .caption = time() |
Name |
имя объекта (уникальное) |
зная его, программно управляем объектом |
Value |
текущее значение объекта |
можем устанавливать и читать, например:
Thisform.Text1.Value = Date() |
Picture |
изображение для Button и Image |
вводится имя файла изображения |
Click Event |
нажатие – прежде всего для Button |
пример для кода кнопки «К началу таблицы»:
if !bof()
go top
endif
_screen.ActiveForm.Refresh() |
Format , InputMask |
для полей ввода |
такие же опции форматирования, что и для команд SAY / GET с шаблоном PICTURE |
RowSource |
для списков – источник данных |
совместно с полем RowSourceType |
|
|
|
Пример кода для кнопки «Выход из формы»:
if MessageBox (“Выходить из формы ?”, 4+32+256, ”Выход”) = 6
_screen.ActiveForm.Release()
else
_screen.ActiveForm.Refresh()
EndIf
Если переменную или массив намечается использовать вне формы или при взаимодействии нескольких форм, создавайте её как Public . |