Руководство разработчика

Модуль FC

Модуль FC содержит описания визуальных типов форм и элементов управления, которые можно помещать на эти формы. Также модуль содержит описания типов цвета, шрифта, атрибутов ячейки таблицы и т.п. Элементы управления имеют много общих свойств, таких как расположение, видимость и др. Эта общность отражена наличием родительского типа ЭЛЕМЕНТ. Элементы могут располагаться на формах двух видов: диалогах и бланках, которым соответствуют типы ДИАЛОГ и БЛАНК. Общность этих форм отражена в их родительском типе ФОРМА, который наследует от типа ЭЛЕМЕНТ информацию о положении и размере, а также добавляет заголовок окна и другие атрибуты форм. Тип ФОРМА имеет методы для динамической вставки/удаления элементов управления и закрытия формы. Таким образом, схема наследования для объектных типов модуля имеет следующий вид:

Тип ДИАЛОГ используется для создания окон пользовательского интерфейса, предназначенных в основном для ввода и модификации данных в произвольной форме. Как правило, диалоговые окна показываются на экране в модальном режиме, т.е. блокируют на время своей работы другие части программы. Однако возможен показ диалоговых окон в немодальном режиме. Положение и размер элементов управления на диалоговых формах задаются в экранных координатах (точках).

Тип БЛАНК предназначен для создания отчетных форм и других печатных документов. Координаты элементов бланка задаются в сантиметрах, что обеспечивает точный вывод на печать. Если диалоговые окна видны на экране целиком, то бланки могут иметь размер, значительно превышающий видимую область. Для отображения на экране бланкам может задаваться масштаб, который не влияет на печать. Это свойство позволяет работать с документами в удобном для глаза виде.

Все формы и элементы управления (кроме статических, таких как ЛИНИЯ, ИЗОБРАЖЕНИЕ, и т.п.) поддерживают формирование всплывающего меню и обработку команд. Обрабатывается клавиша Esc, сочетание Shift+Esc, функциональные клавиши F2-F9 а также сочетание функциональных клавиш с клавишами Alt, Ctrl и Shift, сочетание любых клавиш и буквенно-цифровой клавиатуры с клавишей Alt, причем учитывается регистр символа. Изменение регистра обеспечивается состоянием клавиши CapsLock или нажатием клавиши Shift. Команды могут быть получены с клавиатуры или из всплывающего меню элемента. Кроме того, для некоторых видов окон существует возможность получения определенных действий платформы (всех команд секции Правка – добавить, изменить, и т.д.) в виде специальных командных идентификаторов. Например, если выбирается стандартное действие Правка/Добавить – в обработчик команда текущего выбранного элемента передается специальный идентификатор _ADD_ Эти команды могут быть получены только бланками и МДИ-диалогами (вызванными методом ПОКАЗАТЬ_МДИ). Для диалогов, вызываемых методами ПОКАЗАТЬ и ПОКАЗАТЬ_МОДАЛЬНЫЙ, возможность получения идентификаторов стандартных действий платформы не поддерживается, клавиши всегда транслируются в команды. В этом случае при выборе того же стандартного действия Правка/ДОБАВИТЬ в обработчик команда текущего выбранного элемента передается не идентификатор _ADD_, а горячая клавиша, назначенная для этого действия (например, F4). По умолчанию передача стандартных действий в качестве команд отключена. За возможность обработки отвечает метод элемента КОМАНДА_РАЗР, в котором необходимо задать идентификаторы действий, которые могут обрабатываться. Обработка действий может быть задана как в контексте отдельных элементов, так и в контексте всей формы. Если для формы и для элемента на форме задана возможность обработки одного и того же действия – приоритет имеет элемент. Для модальных диалогов поддерживается закрытие по клавише Esc.

Функции

Объектные типы