Форма

From SunFlurry wiki
Revision as of 12:43, 14 June 2024 by Admin (talk | contribs) (1 revision imported)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
  Form, Menu (Форма)
Статус разработки: Реализован
Создание объекта: Form,Menu...

Объект форма используется для доступа к объектам формы, и позволяет менять их положение, текст, видимость, доступность и прочие свойства, объект также дает доступ к разнообразным визуальным свойствам форм (таким как заголовок окна, флаг изменения данных формы, редактируемый объект и пр.), позволяет сменить текущую форму, сохраняя все данные, измененные пользователем, вызывать визуальные события, сохранять или загружать состояние формы и пр. В большинстве случаев, объект формы используется при работе визуального клиента, однако, некоторые функции могут быть полезны также в консольном клиенте.

Объект формы оперирует внутрисистемным понятием формы, связанным с рабочим потоком. При создании, каждый поток имеет свой выделенный объект формы, даже если на экран не выведено визуальное окно с полями редактирования. При вызове функций, создающих новую модальную форму (к примеру, SelectObject или LoadModule в нужном режиме), в массив форм текущего потока добавляется дочерняя форма, при выводе табличных форм отчетов или тестовых файлов, в структуру подчинения текущей формы также будет добавлена дочерняя форма с таблицей или текстом. Функции, типа GetParentForm или GetChildForm позволяют получать доступ к дочерним или родительским формам текущей формы. Каждая форма имеет свой серийный номер, уникальный в пределах текущей сессии для всех потоков клиента. Этот номер (доступный с помощью атрибута SerialNumber) можно использовать, к примеру, для создания уникальной идентификации текущей рабочей формы, в семафорах, именах файлов и пр.

Для работы со свойствами формы и свойствами элементов формы обычно используется прямое обращение к интерфейсу Form, к которому применимы все функции и атрибуты, применимые к объекту формы. При вызове таких функций, интерфейс будет указывать на текущую рабочую форму потока (к примеру, Form.Control("Таблица")). Однако, интерфейс не хранит данных или ссылок, при помещении его в переменную и вызове в другом потоке, он будет указывать уже на другую форму, являющуюся рабочей для этого потока , поэтому, он применяется исключительно для работы с текущей формой, не имеет смысла его передача или хранение. Чтобы получить доступ к объекту текущей формы, который будет указывать на определенную форму вне зависимости от того, где произошел вызов, используйте, к примеру, функцию ThisForm. Полученные с использованием интерфейса объекты элементов формы (Form.Control) уже являются самостоятельными объектами и могут передаваться в другие потоки.

Особым типом экранных форм является форма, открытая в режиме инструментария. Такие формы могут быть загружены как для текущего потока, так и для корневого потока. Формы в подобном режиме не имеют загруженного модуля, вся выполняемая работа должна происходить в обработчиках визуальных событий (к примеру, в обработчиках нажатия на кнопку). Формы обычно не имеют доступа к переменным модуля (так как они могут быть открыты в контексте разных модулей, поэтому, для хранения необходимых данных, может использоваться, к примеру, атрибут Tag, привязанный к определенному элементу формы, функции типа StorageGetValue, StorageSetValue, либо глобальные переменные. Формы, загруженные в режиме инструментария, для текущего потока будут закрыты по требованию пользователя, либо при закрытии самого потока. Формы, загруженные глобально, будут закрыты по требованию пользователя, либо при окончании работы системы.

Частным случаем открытия формы в режиме инструментария для текущего потока является режим всплывающего окна. В этом режиме форма существует только до тех пор, пока не потеряет фокус, после чего закрывается. Данный режим удобен для создания сложных всплывающих окон, когда простое меню (List.Select) не имеет достаточной гибкости для выполнения задуманной функции выбора.

Порядок загрузки форм, и его влияние на доступность функций интерфейса в разные этапы загрузки

Загрузка визуальных форм в визуальных и консольных клиентах происходит по следующему алгоритму (см. также описание LoadModule):

  • Создание нового внутреннего объекта формы, подчиненной родительской, если создается модельное окно. Форма на этом этапе не имеет визуального представления на экране.
  • Создание новых переменных для среды исполнения (Param, Option, ModalResult)
  • Загрузка модуля формы в формате sfc (или sf, если первый отсутствует). Если внешний файл уже загружался ранее и не изменялся с тех пор, загрузка будет производиться из внутреннего буфера, для оптимизации скорости загрузки.
  • Выполнение загруженного модуля (который может создавать и изменять переменные, однако, визуальный контекст формы пока не доступен). На данном этапе возможно обращение к интерфейсу формы только для некоторых функций и атрибутов, к примеру, Type, IsFullyInitialized, Mode, Object и пр. Если при выполнении модуля возникнет исключение, загрузка формы продолжена не будет.
  • Выполнение функции OnOpen, если она присутствует в загруженном модуле. Для выполняемого кода действуют ограничения, описанные в предыдущем пункте. Если при выполнении функции возникнет исключение, либо функция возвратит ноль, загрузка формы продолжена не будет. Данный этап является последним для консольных клиентов, также как и для для модулей, не имеющих форм.
    • Для консольного клиента вызывается также функция OnConsoleWork, если таковая присутствует.
    • После того, как функция закончит работу, будет вызвана функция OnExit, если она существует, если функция возвратит ноль, система снова вызовет OnConsoleWork.
  • Загрузка файла формы в формате sfgc (или sfg, если первый отсутствует), см. выше информацию для sfc. Если файл формы отсутствует, будет вызвано исключение и загрузка продолжена будет.
  • Создание и заполнение визуального объекта формы из загруженного файла формы, при ошибке импорта, система создает исключение и загрузка продолжена будет.
  • Выполнение функции OnPostOpen, если она присутствует в загруженном модуле. См. комментарии для функции OnOpen.
  • Вывод формы на экран, создание кнопки на панели задач системы, вызов визуального события OnOpen, заполнение таблиц формы информацией из базы данных, вызов сопутствующих событий, типа OnInitLine. События, вызываемые на данном этапе, могут свободно оперировать всеми визуальными свойствами формы. Однако, функция IsFullyInitialized будет по-прежнему возвращать ноль.
  • Устанавливается флаг того, что форма полностью загружена, функция IsFullyInitialized будет в дальнейшем возвращать единицу.
  • При закрытии визуальной формы:
    • Если на форме установлен флаг изменения, будет задан вопрос о целесообразности потери данных.
    • Будет вызвано визуальное событие OnClose внутри которого можно отменить закрытие формы.
    • Будет произведено автоматическое сохранение установок формы, если это предусмотрено ее свойствами.
    • Будет произведено удаление визуальных элементов и объектов языка, связанных с формой.

Наследование форм

При создании нового потока создается также новая виртуальная форма. В момент, когда происходит загрузка файла формы, форма становится визуальной. Если форма, в процессе работы, создает новые табличные (Table.Show) или текстовые формы, они будут ассоциированы с текущей формой, как дочерние. При закрытии текущей формы, текущий модуль и поток не будут закрыты до тех пор, пока не закрыты все дочерние табличные или иные формы. Это связано с тем, что табличная форма может иметь интерактивные элементы, обработка которых осуществляется с помощью функций локального модуля (см. к примеру, событие OnDoubleClick), удаление модуля из памяти сделало бы обработку таких событий невозможным. Если форма создает другую форму в модальном режиме (см. LoadModule), новая форма также становится дочерней формой текущей, и текущая форма будет недоступна для работы до тех пор, пока не закрыта новая модальная форма и все ее дочерние формы.

В определенных случаях, такое сложное подчинение может создать некорректную ситуацию, когда для подчиненной формы были открыты табличные формы (печатные формы), не являющиеся интерактивными, форма была закрыта, однако система не позволяет пользователю продолжить работу с формой верхнего уровня, так как у подчиненной формы остались открытые табличные формы, что не позволило закрыть модуль подчиненной формы и отдать управление материнской. Это помешает работе пользователя. Чтобы избежать такой ситуации, можно использовать функцию Destroy вместо Close при закрытии формы. Это позволит перенести все созданные свободные табличные формы в подчинение родительской формы. Как альтернатива, можно либо использовать функцию Table.ShowOnParent вместо Table.Show при выводе печатных форм на экран.

Функции и атрибуты объекта формы или элемента формы

Функции и атрибуты этой группы применяются к объекту формы или интерфейсу формы. Для получения объекта формы из объекта элемента формы, можно применить функцию <Элемент>.Form().

Идентификатор Статус Тип Визуальная Параметры Описание
Form Реализована Атрибут
Да
Form:<Интерфейс формы, по умолчанию обращающийся к текущей форме потока (INTERFACE)> Интерфейс формы позволяет использовать обычные функции, доступные для объекта формы. При работе с интерфейсом, он всегда указывает на текущую форму того потока, в котором он был вызван. Чтобы получить неизменяемую ссылку на текущую форму, используйте функцию ThisForm.
ThisForm Реализована Функция
Да
Form.ThisForm():<Объект текущей формы потока (FORM)> Функция получает ссылку на текущую форму потока, если она была использована совместно с интерфейсом формы, либо на форму, связанную с текущим объектом (к примеру, если объект адресует визуальный элемент формы).
IsForm Реализована Функция
Да
Form.IsForm():<Является ли визуальный объект формой (INT)> Функция возвращает единицу, если визуальный объект адресует форму, иначе функция возвращает ноль (объект адресует элемент формы или макрос).
<Наименование элемента формы> Реализована Атрибут
Да
Form.<Наименование элемента формы>:<Визуальный объект формы по его наименованию (FORM)> Атрибут получает визуальный элемент текущей формы по его наименованию (наименование задается при редактировании формы в Студии, по умолчанию элементы не имеют наименований). Если визуальный элемент не существует, будет вызвано исключение.
Control, ControlByName Реализована Функция
Да
Form.Control(<Наименование визуального элемента с наименованием макроса, если необходимо (STRING)>):<Найденный визуальный элемент или ноль (FORM,INT)> Функция получает визуальный элемент текущей формы по его наименованию (наименование задается при редактировании формы в Студии, по умолчанию элементы не имеют наименований). При указании наименования, можно также указать наименование элемента макроса, в который включен искомый элемент. Наименование макроса следует первым, затем после точки задается наименование элемента. Если визуальный элемент не найден, функция возвращает ноль.
AddControl Реализована Функция
Да
Form.AddControl(<Тип визуального элемента (INT)>,<Имя элемента (STRING)>,<Значение элемента>,<Якоря элемента (INT)>,<Координаты элемента (STRING)>,<Параметры элемента (LIST)>,<События элемента (LIST)>):<Созданный визуальный элемент (FORM)> Функция создает и помещает на форму новый визуальный элемент с указанными параметрами и событиями.
Type Реализована Функция
Да
Form.Type():<Тип формы (INT)> Функция возвращает тип адресуемой объектом формы. Возможны следующие значения: -1 - форма не имеет визуального окна, либо окно пока не было создано, 0 - обычная визуальная форма, 1 - свободная табличная форма (SFT), 2 - свободная текстовая форма, 1000 - другая неизвестная форма. Атрибут может использоваться до инициализации формы и в консольном клиенте.
ToolMode Реализована Функция
Да
Form.ToolMode():<Тип формы инструментария (INT)> Функция получает тип адресуемой формы. Возможные следующие значения: -1 -- данная форма не загружена в режиме инструментария, 0 -- данная форма является глобальным инструментарием, 1 -- данная форма является локальным инструментарием, 2 -- данная форма загружена в режиме всплывающего окошка, 10 -- данная форма загружена в режиме модального диалога (не инструментальная форма). Функция может использоваться до инициализации формы и в консольном клиенте.
Mode Реализована Функция
Да
Form.Mode():<Режим загрузки формы (INT)> Функция получает индекс рабочего режима формы. Возможные следующие значения: 0 -- обычный режим загрузки, 1 -- форма загружена в режиме выбора значения (см. SelectObject, MassSelectObjects), 2 -- форма загружена в режиме инструментария или режиме диалога, 3 -- форма загружена в режиме редактирования объекта базы данных, 4 -- форма загружена в режиме просмотра объекта базы данных (редактирование запрещено). Функция может использоваться до инициализации формы и в консольном клиенте.
MassSelectMode Реализована Функция
Да
Form.MassSelectMode():<Форма загружена в режиме множественного выбора (INT)> Функция возвращает единицу, если форма загружена в режиме множественного выбора (см. MassSelectObjects), иначе возвращается ноль. Функция может использоваться до инициализации формы и в консольном клиенте.
IsActive Реализована Функция
Да
Form.IsActive():<Активная ли форма в данный момент (INT)> Функция возвращает 1, если выбранная форма активна в данный момент (имеет фокус), иначе возвращается 0. Функция не может быть вызвана из интерфейса, так как интерфейс обычно указывает на активное окно потока, это может явиться причиной неверной логики.
DoSelectObject, SelectObject Реализована Функция
Да
Form.DoSelectObject(<Выбранный объект (DB)>) Функция работает для форм, загруженных в режиме выбора объекта (см. SelectObject, MassSelectObjects) и позволяет программно эмулировать событие, когда клиент осуществил выбор объекта. В процессе фиксации выбора, для случая множественного выбора, система вызывает функцию выбора объекта, которая была задана в момент вызова MassSelectObjects. Для случая простого выбора (SelectObject) по окончании выбора форма будет закрыта.
Object, Value, EditObject Реализована Атрибут Form.Object:<Объект редактирования формы (DB)> Атрибут используется для форм, открытых в режиме редактирования или просмотра объекта базы данных (OpenObject) и позволяет получить редактируемый (или просматриваемых) в данный момент объект. Атрибут может использоваться до инициализации формы и в консольном клиенте.
IsResizable Реализована Атрибут
Да
Form.IsResizable:<Режим изменения размеров элементов формы (INT)> Атрибут возвращает или устанавливает режим изменения размеров всех элементов на форме при изменении размеров формы. 1 - изменение размеров разрешено, иначе запрещено. Атрибут используется только для загруженных визуальных форм.
IsVisible Реализована Атрибут
Да
Form.IsVisible:<Форма отображается на экране (INT)> Атрибут возвращает 1, если форма отображается на экране и 0 в другом случае (форма может быть загружена, но еще не выведена на экран). Атрибут используется только для загруженных визуальных форм.
IsFullyInitialized Реализована Атрибут
Да
Form.IsFullyInitialized:<Форма загружена и инициализирована (INT)> Атрибут возвращает 1, если форма загружена, выведена на экран и прошла полный цикл начальной инициализации (см. описание Форма), иначе возвращается ноль. Атрибут может использоваться до инициализации формы и в консольном клиенте.
DisableControls Реализована Функция
Да
Form.DisableControls(<Сделать недоступными элементы формы или подчиненные элементы элемента формы (INT)>) Функция используется для группового изменения доступности всех элементов формы (при вызове функции с объектом формы) или элементов, находящихся на выбранной закладке группы страниц. Чтобы сделать элементы недоступными, первый аргумент должен быть равен единице, чтобы вернуть элементы в доступное состояние, нулю. Функция используется только для загруженный визуальных форм. Флаг доступности, используемый этой функцией, не изменяется функциями, типа IsDisabled, поэтому, запрещая доступность формы с помощью этой функции можно не опасаться, что во время инициализации, отдельные элементы формы снова станут доступными.
Caption Реализована Атрибут
Да
Form.Caption:<Заголовок формы (STRING)> Атрибут получает или изменяет заголовок текущей формы. Атрибут используется только для загруженных визуальных форм.
Count Реализована Функция Form.Count():<Количество форм верхнего уровня (INT)> Функция возвращает количество форм верхнего уровня (включая виртуальную форму корневого потока). Обычно количество таких форм совпадает с количеством рабочих потоков в системе (даже если эти потоки не имеют визуальных форм на экране). Функция может использоваться до инициализации формы и в консольном клиенте.
GetForm Реализована Функция Form.GetForm(<Индекс формы верхнего уровня (INT)>):<Объект формы (FORM)> Функция получает объект формы верхнего уровня по ее индексу. Объект виртуальной формы корневого потока всегда имеет индекс 1. Функция может использоваться до инициализации формы и в консольном клиенте.
SerialNumber Реализована Атрибут
Да
Form.SerialNumber:<Порядковый (серийный) номер визуальной формы (INT)> Атрибут получает порядковый (серийный) номер визуальной формы, который в дальнейшем может использоваться для ее уникальной идентификации. Номер является уникальным для текущей сессии для всех уже созданных или закрытых форм, а также форм, которые могут быть созданы в будущем. Атрибут используется только для загруженных визуальных форм, поток без визуальной формы не имеет серийного номера формы (но имеет серийный номер потока см. ThreadSerial). В одном потоке могут быть инициализированы несколько форм, каждая будет иметь свой уникальный номер.
ChildrenCount Реализована Функция Form.ChildrenCount():<Количество дочерних форм текущей формы (INT)> Функция получает количество дочерних форм текущей формы. Форма может быть не выведена на экран. Дочерними формами могут быть, к примеру окна с текстом, окна с таблицами (печатные формы), формы, открытые в модальном режиме (см. LoadModule). В список дочерних форм не включаются формы, открытые в режиме окна инструментария (см. LoadToolForm). Функция может использоваться до инициализации формы и в консольном клиенте.
GetChildForm Реализована Функция Form.GetChildForm(<Индекс дочерней формы (INT)>):<Объект дочерней формы (FORM)> Функция получает дочернюю форму текущей формы по ее индексу. Форма может быть не выведена на экран. Дочерними формами могут быть, к примеру окна с текстом, окна с таблицами (печатные формы), формы, открытые в модальном режиме (см. LoadModule). В список дочерних форм не включаются формы, открытые в режиме окна инструментария (см. LoadToolForm). Функция может использоваться до инициализации формы и в консольном клиенте.
GetParentForm Реализована Функция Form.GetParentForm():<Родительская форма текущей формы или пустое значение (FORM)> Функция получает родительскую форму текущей формы, либо возвращает пустое значение, если текущая форма является формой верхнего уровня. Функция может использоваться до инициализации формы и в консольном клиенте.
ToolWindowsCount Реализована Функция
Да
Form.ToolWindowsCount:<Количество дочерних форм в режиме инструментария (INT)> Функция получает количество дочерних форм текущей формы, загруженных в режиме инструментария. Форма может быть не выведена на экран. Функция может использоваться до инициализации формы и в консольном клиенте.
GetToolWindow Реализована Функция
Да
Form.GetToolWindow(<Индекс дочерней формы, загруженной в режиме инструментария (INT)>):<Объект дочерней формы (FORM)> Функция получает дочернюю форму текущей формы, загруженную в режиме инструментария, по ее индексу. Форма может быть не выведена на экран. Функция может использоваться до инициализации формы и в консольном клиенте.
SwitchToForm Реализована Функция
Да
Form.SwitchToForm(<Наименование формы (STRING)>,<Не загружать данные текущей формы в новую форму (INT)>=0) Функция позволяет загрузить форму с указанным именем вместо загруженной в данный момент формы. При загрузке формы, поля редактирования с одинаковыми именами будут сохранять свое содержимое. Для новых полей будет использовано содержимое по умолчанию (если они связаны с реквизитами объекта базы данных, они будут загружены из базы данных). Инициализацию визуальных элементов значениями текущей формы можно при необходимости отключить. Форма теряет признак полной загрузки (IsFullyInitialized) на время загрузки.
Close Реализована Функция
Да
Form.Close(<Задавать вопрос о сохранении данных (INT)>=1,<Запретить автоматическое сохранение настроек формы (INT)>=0):<Закрытие разрешено, форма закрывается (INT)> Функция выполняет закрытие текущей формы. Если форма имеет флаг изменения, будет задан вопрос о целесообразности закрытия формы без сохранения данных (вопрос можно отключить). Также можно запретить автоматическое сохранение настроек формы, если таковое предусмотрено установками формы. Пользователь может отказать в закрытии формы, либо обработчики событий, типа OnClose могут отменить попытку закрытия. В случае, если форму не удалось закрыть, функция возвращает 0, иначе 1. В случае успешного выполнения функции, форма не будет закрыта до тех пор, пока текущий код не закончит исполнение, так как внутри кода могут быть другие вызовы к элементам и свойствам формы. Если код не возвращает управление слишком долгое время, система производит отмену закрытия формы, форма закрыта не будет. Из-за такого механизма защиты, рекомендуется после вызова функции закрытия сразу же выйти из исполняемого модуля.
Destroy Реализована Функция
Да
Form.Destroy(<Задавать вопрос о сохранении данных (INT)>=1,<Запретить автоматическое сохранение настроек формы (INT)>=0):<Закрытие разрешено, форма закрывается (INT)> Функция выполняет закрытие текущей формы. Если форма имеет флаг изменения, будет задан вопрос о целесообразности закрытия формы без сохранения данных (вопрос можно отключить). Также можно запретить автоматическое сохранение настроек формы, если таковое предусмотрено установками формы. Пользователь может отказать в закрытии формы, либо обработчики событий, типа OnClose могут отменить попытку закрытия. В случае, если форму не удалось закрыть, функция возвращает 0, иначе 1. В случае успешного выполнения функции, форма не будет закрыта до тех пор, пока текущий код не закончит исполнение, так как внутри кода могут быть другие вызовы к элементам и свойствам формы. Если код не возвращает управление слишком долгое время, система производит отмену закрытия формы, форма закрыта не будет. Из-за такого механизма защиты, рекомендуется после вызова функции закрытия сразу же выйти из исполняемого модуля. В отличии от функции Close, данная функция также переносит все простые дочерние формы (таблицы, текстовые формы и пр.) в подчинение родительской формы, если таковая существует. Это позволяет закрыть модальный модуль текущей формы и перейти к исполнению формы-родителя. См. описание Форма.
IsChanged Реализована Функция
Да
Form.IsChanged(<Установить флаг изменения формы (INT)>):<Текущий флаг изменения формы (INT)> Функция получает, устанавливает или снимает флаг изменения формы. Флаг изменения может быть установлен только для загруженных визуальных форм, при изменении флага также изменяется заголовок формы (если он не изменялся программой), к заголовку добавляется признак изменения. После изменения также гарантирован вызов визуального события OnStatusChange, если таковое было объявлено.
CallOnStatusChange Реализована Функция
Да
Form.CallOnStatusChange() Функция инициирует визуальное событие OnStatusChange, если таковое было объявлено для формы. Функция не дожидается начала выполнения события, а просто устанавливает флаг в необходимости его выполнения. Функция используется только для загруженных визуальных форм.
CurrentEventControl Реализована Функция
Да
Form.CurrentEventControl():<Элемент формы, инициировавший событие (FORM)> Функция получает элемент формы, который был активным в момент вызова текущего визуального события, если такой элемент не определен, функция возвращает пустое значение. Если она вызывается не из визуального события, результат функции не определен. Для визуальных событий OnOpen, OnReopen, OnSaveRequest и OnStatusChange, функция будет возвращать объект макроса, для которого было инициировано это событие, если событие инициировано для самой формы, функция возвратит пустое значение.
FocusedControl Реализована Функция
Да
Form.FocusedControl():<Активный визуальный элемент формы или пустое значение (FORM,NOTHING)> Функция применяется к загруженной визуальной форме и возвращает текущий активный визуальный элемент формы (элемент с фокусом), либо пустое значение, если ни один из визуальных элементов не является активным.
StorageGetValue Реализована Функция Form.StorageGetValue(<Наименование значения коллекции значений формы (STRING)>):<Значение по его наименованию> Функция получает значение, привязанное к текущей форме по его наименованию. Форма может быть не загруженной и не визуальной. Программа может хранить произвольное количество значений в контексте формы, доступных по их наименованиям.
StorageSetValue Реализована Функция Form.StorageSetValue(<Наименование значения коллекции значений формы (STRING)>,<Значение>) Функция сохраняет значение, привязанное к текущей форме по его наименованию. Форма может быть не загруженной и не визуальной. Программа может хранить произвольное количество значений в контексте формы, доступных по их наименованиям.
ContainsPeriodicalValues Реализована Атрибут
Да
Form.ContainsPeriodicalValues:<Форма или элемент содержат периодические значения (INT)> Атрибут применяется к форме или визуальному элементу, и позволяет получить или изменить флаг того, что элемент или форма содержат периодические значения базы данных. При установке этого флага к заголовку формы добавляется дата на которую отображаются реквизиты периодических значений. При загрузке формы в режиме редактирования, если по крайней мере одно из полей редактирования привязано к периодическому реквизиту, флаг будет установлен автоматически.
SettingsLoaded Реализована Атрибут
Да
Form.SettingsLoaded:<Для формы были загружены установки (INT)> Атрибут применяется к форме, и позволяет получить флаг того, что для формы были загружены сохраненные ранее установки. Флаг заполняется сразу после загрузки визуальной формы до выполнения визуальных событий, и, к примеру, в момент исполнения OnOpen, если загрузка происходила, он уже установлен.
CollectSettings Реализована Функция
Да
Form.CollectSettings():<Таблица с установками формы (TAB)> Функция применяется к загруженной визуальной форме и получает таблицу со всеми ее установками. Сбор информации на форме происходит по правилам, которые работают для обычного сохранения и загрузки установок, поэтому определенные элементы формы могут быть пропущены (элементы для которых установлен признак "не сохранять состояние в установках формы", таблицы, привязанные к базе данных и пр.). Таблица-результат имеет следующие столбцы: ControlType, ControlName, Value, Selected, Tag.
ControlsToString Реализована Функция
Да
Form.ControlsToString(<Наименование элементов для создания настройки (STRING)>):<Строка с установками формы (STRING)> Функция применяется к загруженной визуальной форме и получает строку со всеми ее установками (либо установками определенных элементов). Сбор информации на форме происходит по правилам, которые работают для обычного сохранения и загрузки установок, поэтому определенные элементы формы могут быть пропущены (элементы для которых установлен признак "не сохранять состояние в установках формы", таблицы, привязанные к базе данных и пр.). Созданная строка-результат имеет формат ANSI и может быть сохранена в виде текста во внешних источниках, однако, элементы базы данных содержатся в ней в виде внутренних кодов, поэтому, загрузка в другую базу данных приведет к позиционированию на неверных элементах. Аргумент может содержать наименования элементов для создания настройки через запятую, если аргумент не задан, будут использованы все элементы формы.
ControlsFromString Реализована Функция
Да
Form.ControlsFromString(<Строка с установками формы (STRING)>) Функция применяется к загруженной визуальной форме и загружает установки элементов формы, содержащиеся в строке, созданной с помощью функции ControlsToString. Установки включают значение полей, позицию в таблицах, содержимое таблиц (если они не привязаны к базе данных) и пр. Загрузка строки, созданной в другой базе данных, приведет к позиционированию на неверных элементах.
OnTimerInterval Планируется Атрибут
Да
Form.OnTimerInterval:<Интервал выполнения события OnTimer в мс. (INT)> Атрибут применяется к загруженной визуальной форме и получает или позволяет изменять интервал выполнения визуального события OnTimer в миллисекундах. При установке нулевого значения, событие будет отключено.
StatusText Реализована Функция
Да
Form.StatusText(<Новая строка статуса выполнения (STRING)>):<Текущая строка статуса выполнения (STRING)> Функция получает или изменяет текст статуса выполнения, выводимый в полосе статуса в самом низу окна клиента. Статус выполнения выводится для каждого потока отдельно и будет показан только пока поток занят исполнением программы. Для консольного клиента информация по статусу обычно выводится в заголовок консоли. Функция может использоваться до инициализации формы и в консольном клиенте.
UpdateProgress Реализована Функция
Да
Form.UpdateProgress(<Текущий прогресс выполнения (INT)>,<Максимальный прогресс выполнения (INT)>,<Текущий текст выполнения (STRING)>) Функция изменяет текст и рисунок статуса выполнения, выводимый на текущей кнопке панели задач формы, а также во всплывающей подсказке при наведении курсора мыши на эту кнопку. Статус выполнения выводится для каждого окна отдельно. Текущий прогресс не может быть равен нулю, при передаче аргумента, равного -1, процесс не будет выводиться в виде процента выполнения (режим неопределенного прогресса). Кроме рисунка процента выполнения, можно также указать текст для задания этапа выполнения. Рисование статуса выполнения автоматически останавливается, когда программа завершает работу. Функция может использоваться до инициализации формы.
StopProgress Реализована Функция
Да
Form.StopProgress() Функция удаляет текст и рисунок статуса выполнения, выводившийся функцией UpdateProgress. Функция может использоваться до инициализации формы.
TaskbarIcon Планируется Функция
Да
Form.TaskbarIcon(<Новый индекс иконки кнопки панели задач (INT)>,<Тип кнопки панели задач (INT)>=0):<Текущий индекс иконки кнопки панели задач (INT)> Функция получает или изменяет индекс иконки кнопки панели задач. Кнопка может быть как локальной (кнопка текущего окна), так и глобальной (кнопка потока). Функция может использоваться до инициализации формы.
GetFormLocationName Реализована Функция Form.GetFormLocationName(<В виде стандартного пути без изменения (INT)>=1):<Путь загрузки текущей формы (STRING)> Функция получает полный путь загрузки текущей формы (без указания на имя файла загрузки). Для форм, загруженных для объектом базы данных, путь может выглядеть, как стандартный (Ref.Номенклатура, для чего аргумент должен быть равен 1), либо будет переведен на основной язык проекта (Справочник.Номенклатура, для чего аргумент должен быть равен 0). Функция может использоваться до инициализации формы и в консольном клиенте.
GetFormFileName Реализована Функция Form.GetFormFileName():<Путь загрузки и имя файла текущей формы (STRING)> Функция получает полный путь загрузки текущей формы с указанием на имя файла загрузки (к примеру, Ref.Номенклатура\Form.sfgc или Modules\FreeForms\Касса\РеестрДоверенностей\SelectForm.sfgc). Функция может использоваться до инициализации формы и в консольном клиенте. Объект должен указывать на визуальную форму.
GetModuleFileName Реализована Функция Form.GetModuleFileName():<Путь загрузки и имя файла текущего модуля (STRING)> Функция получает полный путь загрузки текущего модуля с указанием на имя файла загрузки (к примеру, Ref.Номенклатура\Module.sfc или Modules\FreeForms\Касса\РеестрДоверенностей\Module.sfc). Функция может использоваться до инициализации формы и в консольном клиенте.
BegPeriodDate Реализована Функция Form.BegPeriodDate(<Дата начала периода периодических реквизитов формы (DATE)>):<Текущая дата начала периода периодических реквизитов формы (DATE)> Функция получает или изменяет начальную дату сохранения периодических реквизитов формы. Данная дата присутствует для любой формы, однако, используется только для форм, выводящих таблицы с объектами базы данных. Для форм с редактируемыми объектами базы данных используется дата, хранящаяся в свойствах объекта (см. DB.UsePeriod). См. также описание функций GlobalBegPeriodDate и GlobalEndPeriodDate. Функция может использоваться до инициализации формы и в консольном клиенте.
EndPeriodDate Реализована Функция Form.EndPeriodDate(<Дата окончания периода и отображения периодических реквизитов формы (DATE)>):<Текущая дата окончания периода и отображения периодических реквизитов формы (DATE)> Функция получает или изменяет конечную дату сохранения периодических реквизитов формы, также используемую как дату отображения реквизитов. Данная дата присутствует для любой формы, однако, используется только для форм, выводящих таблицы с объектами базы данных. Для форм с редактируемыми объектами базы данных используется дата, хранящаяся в свойствах объекта (см. DB.UsePeriod). См. также описание функций GlobalBegPeriodDate и GlobalEndPeriodDate. Функция может использоваться до инициализации формы и в консольном клиенте.
DefaultFont Реализована Функция
Да
Form.DefaultFont(<Новое значение шрифта формы по умолчанию (STRING)>):<Предыдущее значение шрифта формы по умолчанию (STRING)> Функция возвращает или/и изменяет шрифт формы по умолчанию. При изменении будут обновлены значения коэффициентов масштабирования формы. В зависимости от новых установок, текст и элементы формы будут выглядеть крупнее или мельче. Значение шрифта можно изменять только до того, как форма была загружена (т.е. при инициализации модуля формы или в его событии OnOpen).
ScaleFactorX Реализована Функция
Да
Form.ScaleFactorX(<Новое значение горизонтального коэффициента масштабирования формы (REAL)>):<Предыдущее значение горизонтального коэффициента масштабирования формы (REAL)> Функция возвращает или/и изменяет значение горизонтального коэффициента масштабирования формы. По умолчанию используется значение глобального коэффициента масштабирования, см. GlobalFormScaleFactorX, данное значение отменяет действие глобального только для текущей формы. Если значение больше 1, элементы всех форм будут растянуты по горизонтали, если меньше 1, элементы будут сжаты. Значение коэффициента можно изменять только до того, как форма была загружена (т.е. при инициализации модуля формы или в его событии OnOpen).
ScaleFactorY Реализована Функция
Да
Form.ScaleFactorY(<Новое значение вертикального коэффициента масштабирования формы (REAL)>):<Предыдущее значение вертикального коэффициента масштабирования формы (REAL)> Функция возвращает или/и изменяет значение вертикального коэффициента масштабирования формы. По умолчанию используется значение глобального коэффициента масштабирования, см. GlobalFormScaleFactorY, данное значение отменяет действие глобального только для текущей формы. Если значение больше 1, элементы всех форм будут растянуты по вертикали, если меньше 1, элементы будут сжаты. Значение коэффициента можно изменять только до того, как форма была загружена (т.е. при инициализации модуля формы или в его событии OnOpen).
AutoScaleMode Реализована Атрибут
Да
Form.AutoScaleMode:<Значение режима автоматического масштабирования формы (REAL)> Атрибут изменяет значение режима автоматического масштабирования формы (см. статью Редактор форм). Значение режима можно изменять только до того, как форма была загружена (т.е. при инициализации модуля формы или в его событии OnOpen).
InvokeEvent Реализована Функция
Да
Form.InvokeEvent(<Имя события (STRING)>,<Имена переменных, передаваемых событию, через запятые (STRING)>,<Значение переменной 1>,<Значение переменной 2>...) Функция инициирует выполнение указанного визуального события привязанного либо к визуальному элементу формы (если оный адресуется объектом, к примеру OnInitLine), либо к самой форме (к примеру OnOpen). Разработчик должен указать все переменные, участвующие в событие и задать их значения. Если какая-то из переменных не будет указана, при обращении к ней в момент выполнения события будет вызвано исключение. Событие выполняется в синхронном режиме (т.е. является прерывающим событием), управление не будет возвращено до тех пор, пока не закончится выполнение события. Изменения в переменных внутри события будут транслированы на переменные, переданные в виде аргументов события в момент окончания выполнения события. Некоторые события (к примеру, OnOpen) могут быть вызваны несколько раз, если они заданы на вложенных формах макросов или закладках. Для списка возможных событий см. описание Студии. Функция применяется к загруженной визуальной форме или ее элементу.
InvokeEventAsync Реализована Функция
Да
Form.InvokeEventAsync(<Имя события (STRING)>,<Имена переменных, передаваемых событию, через запятые (STRING)>,<Значение переменной 1>,<Значение переменной 2>...) Функция инициирует выполнение указанного визуального события привязанного либо к визуальному элементу формы (если оный адресуется объектом, к примеру OnInitLine), либо к самой форме (к примеру OnOpen). Разработчик должен указать все переменные, участвующие в событие и задать их значения. Если какая-то из переменных не будет указана, при обращении к ней в момент выполнения события будет вызвано исключение. Событие выполняется в асинхронном режиме (т.е. может быть выполнено только в момент, когда программа ожидает действий пользователя), управление будет возвращено до того, как начнется выполнение события. Для списка возможных событий см. описание Студии. Функция применяется к загруженной визуальной форме или ее элементу.
InvokeSystemAttachButtonEvent Планируется Функция
Да
Form.InvokeSystemAttachButtonEvent(<Индекс связанного элемента (INT)>,<Метод вызова (INT)>,<Объект, связанный с вызовом>) Функция инициирует выполнение стандартного события, ассоциированного со связанным элементом текущего визуального элемента формы. Вызывается стандартное действие, ассоциированное со связанным элементом, даже если для него задано программное событие.
HideControlPanel Реализована Функция
Да
Form.HideControlPanel(<Идентификатор панели инструментов (STRING)>) Функция прячет для текущего активного окна указанную панель инструментов. Пользовательские панели инструментов задаются в свойствах проекта. Панель может быть отражена, при переключении на другое активное окно, однако, будет снова спрятана, при активации оригинального окна. См. также общую функцию HideControlPanel.
ShowControlPanel Реализована Функция
Да
Form.ShowControlPanel(<Идентификатор панели инструментов (STRING)>) Функция отображает для текущего активного окна указанную панель инструментов. Пользовательские панели инструментов задаются в свойствах проекта. Панель может быть спрятана, при переключении на другое активное окно, однако, будет снова отображена, при активации оригинального окна. См. также общую функцию ShowControlPanel.

Функции и атрибуты элементов формы

Функции и атрибуты этой группы применяются к объектам элементов формы. Чтобы получить из объекта формы (или интерфейса формы) объект элемента, можно найти нужный элемент по имени с помощью функции Form.Control или напрямую из интерфейса Form.<Наименование элемента>. Наименования элементов задаются при редактировании формы в Студии.

Идентификатор Статус Тип Визуальная Параметры Описание
Form Реализована Атрибут
Да
Form.Form:<Форма текущего визуального элемента (FORM)> Атрибут получает объект формы, которому принадлежит текущий визуальный элемент.
Macro Реализована Атрибут
Да
Form.Macro:<Объект макроса, к которому принадлежит текущий элемент формы или пустое значение (FORM)> Атрибут получает объект макроса или страницы группы страниц, к которому принадлежит текущий элемент формы. Если элемент не принадлежит макросу или странице, атрибут возвращает пустое значение.
TypeNum Реализована Атрибут
Да
Form.TypeNum:<Цифровой тип визуального элемента (INT)> Атрибут получает тип текущего визуального элемента в виде числа.
Height Реализована Атрибут
Да
Form.Height:<Высота визуального элемента в пикселях (INT)> Атрибут получает или изменяет высоту текущего визуального элемента в пикселях.
Width Реализована Атрибут
Да
Form.Width:<Ширина визуального элемента в пикселях (INT)> Атрибут получает или изменяет ширину текущего визуального элемента в пикселях.
Left Реализована Атрибут
Да
Form.Left:<Отступ слева от начала формы или макроса в пикселях (INT)> Атрибут получает или изменяет отступ слева от начала формы или макроса в пикселях текущего визуального элемента.
Top Реализована Атрибут
Да
Form.Top:<Отступ сверху от начала формы или макроса в пикселях (INT)> Атрибут получает или изменяет отступ сверху от начала формы или макроса в пикселях текущего визуального элемента.
Name Реализована Атрибут
Да
Form.Name:<Идентификатор визуального элемента (STRING)> Атрибут получает строковой идентификатор текущего визуального элемента.
Caption, Text Реализована Атрибут
Да
Form.Caption:<Заголовок визуального элемента (INT)> Атрибут получает или изменяет заголовок текущего визуального элемента. Атрибут может приняться даже к элементам, не имеющим видимого заголовка.
Font Реализована Атрибут
Да
Form.Font:<Шрифт визуального элемента (STRING)> Атрибут получает или изменяет шрифт текущего визуального элемента. Атрибут может приняться даже к элементам, для которых изменение шрифта не имеет смысла. Шрифт задается во внутреннем формате, см. статью Формат записи шрифтов в системе.
FontStyle Реализована Атрибут
Да
Form.FontStyle:<Стиль штрифта визуального элемента (INT)> Атрибут получает или изменяет цифровой стиль шрифта текущего визуального элемента. Атрибут может приняться даже к элементам, для которых изменение шрифта не имеет смысла. Стиль шрифта представляет собой число-битовую маску.
FontColor Реализована Атрибут
Да
Form.FontColor:<Цвет текста визуального элемента (INT)> Атрибут получает или изменяет цвет текста текущего визуального элемента. Атрибут может приняться даже к элементам, для которых изменение цвета текста не имеет смысла. Цвет представлен 3 байтами (24 бит).
Anchors Реализована Атрибут
Да
Form.Anchors:<Визуальные якоря элемента (INT)> Атрибут получает или изменяет якоря текущего визуального элемента. Значение представляет собой число-битовую маску, которая определяет какие части элемента будут увеличены или сужены при изменении размеров формы, а какие будут оставаться без изменения.
Color Реализована Атрибут
Да
Form.Color:<Цвет визуального элемента (INT)> Атрибут получает или изменяет цвет текущего визуального элемента. Атрибут может приняться даже к элементам, для которых изменение цвета не имеет смысла. Цвет представлен 3 байтами (24 бит).
HAlign Реализована Атрибут
Да
Form.HAlign:<Горизонтальное выравнивание текста элемента (INT)> Атрибут получает или изменяет горизонтальное выравнивание текста текущего визуального элемента. Атрибут может применяться даже к элементам, для которых горизонтальное выравнивание текста не имеет смысла.
VAlign Реализована Атрибут
Да
Form.VAlign:<Вертикальное выравнивание текста элемента (INT)> Атрибут получает или изменяет вертикальное выравнивание текста текущего визуального элемента. Атрибут может применяться даже к элементам, для которых вертикальное выравнивание текста не имеет смысла.
Glyph Реализована Атрибут
Да
Form.Glyph:<Номер иконки, отображаемой на элементе (INT)> Атрибут получает или изменяет номер иконки, отображаемой на визуальном элементе. Атрибут может применяться даже к элементам, для которых отображение иконки не имеет смысла.
GroupName Реализована Атрибут
Да
Form.GroupName:<Наименование группы переключателей (STRING)> Атрибут получает наименование группы переключателей, к которой принадлежит на визуальный элемент.
Mask Реализована Атрибут
Да
Form.Mask:<Маска редактирования элемента (STRING)> Атрибут получает или изменяет маску редактирования визуального элемента. Обычно маска используется для поля редактирования или при редактировании ячеек таблицы. См. также Mask.
Hotkey Реализована Атрибут
Да
Form.Hotkey:<Сочетание клавиш для быстрого доступа к элементу (STRING)> Атрибут получает или изменяет сочетание клавиш, используемое для быстрого доступа к визуальному элементу. Сочетание записывается в формате [<Модификатор>+]<Клавиша> (к примеру Alt+F1).
Scale Реализована Атрибут
Да
Form.Scale:<Режим поведения картинки визуального элемента (INT)> Атрибут получает или изменяет режим поведения картинки визуального элемента. Атрибут используется только для визуальных элементов типа картинка и позволяет определить поведение картинки, если ее внутренние размеры больше или меньше фактических размеров элемента.
SelectedPage Реализована Атрибут
Да
Form.SelectedPage:<Индекс текущей страницы группы страниц с закладками (INT)> Атрибут получает или изменяет индекс текущей страницы группы страниц с закладками. Атрибут используется только для визуальных элементов типа группа страниц.
Hint Реализована Атрибут
Да
Form.Hint:<Всплывающая подсказка к визуальному элементу (STRING)> Атрибут получает или изменяет всплывающую подсказку к визуальному элементу.
IsDisabled Реализована Атрибут
Да
Form.IsDisabled:<Режим недоступности визуального элемента (INT)> Атрибут получает или изменяет режим недоступности визуального элемента. В режиме недоступности любой доступ к элементу будет запрещен, пользователь не сможет, к примеру, выделить и поместить в буфер обмена содержание поля редактирования. Для запрета редактирования полей редактирования можно использовать атрибут IsReadOnly.
IsInvisible Реализована Атрибут
Да
Form.IsInvisible:<Режим невидимости визуального элемента (INT)> Атрибут получает или изменяет режим невидимости визуального элемента. В этом режиме элемент не будет отображен на экране.
IsChecked Реализована Атрибут
Да
Form.IsChecked:<Индекс галочки визуального элемента флажка (INT)> Атрибут получает или изменяет индекс галочки визуального элемента флажка. Флажок поддерживает три положения (включенный, выключенный и неопределенный).
IsWithCheckboxes Реализована Атрибут
Да
Form.IsWithCheckboxes:<Режим отображения флажков в списке (INT)> Атрибут получает или изменяет режим отображения флажков в визуальных элементах списков.
IsInEnterChain Реализована Атрибут
Да
Form.IsInEnterChain:<Элемент входит в цепочку редактирования (INT)> Атрибут получает флаг принадлежности визуального элемента цепочке редактирования (Enter-цепочке).
IfSetChangeFlag Реализована Атрибут
Да
Form.IfSetChangeFlag:<Режим автоматической установки флага изменения формы при изменении элемента (INT)> Атрибут получает или изменяет режим автоматической установки флага изменения формы при изменении элемента.
IfNotInSettings Реализована Атрибут
Да
Form.IfNotInSettings:<Запрет сохранения состояния визуального элемента в установки формы (INT)> Атрибут получает или изменяет запрет сохранения состояния визуального элемента при создании установок формы.
IsDefault Реализована Атрибут
Да
Form.IsDefault:<Флаг кнопки по умолчанию (INT)> Атрибут получает или изменяет флаг того, что визуальный элемент кнопки используется по умолчанию. На форме должна быть только одна кнопка, использующаяся по умолчанию. Такая кнопка имеет особую подсветку, и активируется автоматически при активации пользователем комбинации клавиш Ctrl+Enter.
HasNoFocus Реализована Атрибут
Да
Form.HasNoFocus:<Кнопка не принимает фокус (INT)> Атрибут получает флаг того, что визуальный элемент кнопки не может иметь фокус (задается в Студии). Такой режим может использоваться на формах без элементов с фокусом, к примеру, для сенсорных экранов.
NoDisable Реализована Атрибут
Да
Form.NoDisable:<Элемент не может быть недоступным (INT)> Атрибут получает флаг того, что визуальный элемент кнопки не будет недоступным в режиме только для чтения формы или при использовании DisableControls. Такой режим может использоваться для кнопок не выполняющий действия по изменению информации (к примеру, вызывающих помощь).
IsNoGridLines Реализована Атрибут
Да
Form.IsNoGridLines:<Не отображать линии сетки для списков и таблиц (INT)> Атрибут получает или изменяет флаг запрета отображения линий сетки для списков, таблиц и электронных таблиц.
IsPassword Реализована Атрибут
Да
Form.IsPassword:<Не отображать символы, вводимые в поле редактирования (INT)> Атрибут получает или изменяет режим отображения символов, вводимых в поле редактирования. Если режим пароля установлен, вместо информации в поле редактирования будут отражены знаки *.
IsNoCaptions Реализована Атрибут
Да
Form.IsNoCaptions:<Не отображать заголовок для списков и таблиц (INT)> Атрибут получает или изменяет флаг запрета отображения заголовка столбцов для списков, таблиц и электронных таблиц.
IsMultiLine Реализована Атрибут
Да
Form.IsMultiLine:<Режим, в котором поле редактирования может содержать более одной строки (INT)> Атрибут получает или изменяет режим, в котором поле редактирования может содержать более одной строки.
IsNoLevels Реализована Атрибут
Да
Form.IsNoLevels:<Не отображать уровни итогов в электронной таблице (INT)> Атрибут получает или изменяет режим, в котором уровни итогов в электронной таблице не будут отображены.
IsReadOnly Реализована Атрибут
Да
Form.IsReadOnly:<Режим запрета редактирования для полей редактирования и таблиц (INT)> Атрибут получает или изменяет режим запрета редактирования для полей редактирования и таблиц. В отличии от режима запрета доступа (IsDisabled), режим запрета редактирования позволяет просматривать информацию в полях или таблицах, однако, не позволяет ее изменять.
IsEditable Реализована Атрибут
Да
Form.IsEditable:<Режим разрешения редактирования для электронных таблиц (INT)> Атрибут получает или изменяет режим разрешения редактирования для электронных таблиц.
IsWrapped Реализована Атрибут
Да
Form.IsWrapped:<Режим переноса текста на другую строчку для текстовых полей (INT)> Атрибут получает или изменяет режим переноса текста на другую строчку для текстовых полей.
IsHyperLink Реализована Атрибут
Да
Form.IsHyperLink:<Режим отображения текстового поля в виде интерактивной подчеркнутой ссылки (INT)> Атрибут получает или изменяет режим отображения текстового поля в виде интерактивной подчеркнутой ссылки.
IsShowGroups Реализована Атрибут
Да
Form.IsShowGroups:<Отображать наименований групп в электронной таблице (INT)> Атрибут получает или изменяет режим отображения наименований групп в электронной таблице.
IsBeveled Реализована Атрибут
Да
Form.IsBeveled:<Режим объемного отображения разделителя (INT)> Атрибут получает или изменяет режим объемного отображения разделителя.
IsNoScrolling Реализована Атрибут
Да
Form.IsNoScrolling:<Запретить прокрутку ячеек в электронной таблице (INT)> Атрибут получает или изменяет режим запрета прокрутки ячеек в электронной таблице.
IsMoveable Реализована Атрибут
Да
Form.IsMoveable:<Разрешение сдвига мышью визуального элемента разделителя (INT)> Атрибут получает или изменяет режим разрешения сдвига мышью визуального элемента разделителя.
IsProportional Реализована Атрибут
Да
Form.IsProportional:<Режим сохранения пропорции картинки при изменении размеров (INT)> Атрибут получает или изменяет режим сохранения пропорции картинки визуального элемента. Атрибут используется только для визуальных элементов типа картинка.
IsOutlined Реализована Атрибут
Да
Form.IsOutlined:<Режим отображения контура картинки (INT)> Атрибут получает или изменяет отображения контура картинки визуального элемента. Атрибут используется только для визуальных элементов типа картинка.
IsDBAutoUpdate Реализована Атрибут
Да
Form.IsDBAutoUpdate:<Режим автоматического обновления элемента из базы данных через определенные промежутки времени (INT)> Атрибут получает или изменяет режим автоматического обновления элемента из базы данных через определенные промежутки времени. Время автоматического обновления задается в свойствах проекта.
AreFoldersSelectable Реализована Атрибут
Да
Form.AreFoldersSelectable:<Режим разрешения выбора папок для табличных элементов форм, открытых в режиме выбора (INT)> Атрибут получает или изменяет режим разрешения выбора папок для табличных элементов форм, открытых в режиме выбора. Данный режим используется по умолчанию, однако, при вызове формы, он может быть изменен программой.
IfQFiltersAlwaysAllowed Реализована Атрибут
Да
Form.IfQFiltersAlwaysAllowed:<Режим разрешения использования быстрых фильтров для таблиц, не связанных с базой данных (INT)> Атрибут получает или изменяет режим разрешения использования быстрых фильтров (фильтры вводятся непосредственно в столбиках таблицы) для таблиц, не связанных с базой данных.
IsMultiSelectAllowed Реализована Атрибут
Да
Form.IsMultiSelectAllowed:<Режим разрешения выделения диапазонов строк в таблицах (INT)> Атрибут получает или изменяет режим разрешения выделения диапазонов строк в таблицах (вместо выделения только одной ячейки).
MultiSelectMode Реализована Атрибут
Да
Form.MultiSelectMode:<Тип режима выделения диапазонов (INT)> Атрибут получает или изменяет тип режима выделения диапазонов строк в таблицах.
ContainsPeriodicalValues Реализована Атрибут
Да
Form.ContainsPeriodicalValues:<Флаг того, что элемент содержит периодические значения (INT)> Атрибут получает или изменяет флаг того, что элемент (таблица) содержит периодические значения. При установке такого флага, форма получает признак того, что в ней используются периодические элементы и в заголовке будет выведена дата отображения элементов формы. Флаг обычно устанавливается автоматически при инициализации формы, однако, при использовании функции BindToProperty, возможно необходимо установить этот флаг программно.
PartialLoadingModeColumns Планируется Атрибут
Да
Form.PartialLoadingModeColumns:<Список реквизитов для частичной загрузки объектов таблицы (STRING)> Атрибут получает или изменяет список реквизитов для частичной загрузки объектов таблицы. Реквизиты перечисляются через запятую.
BevelShape Реализована Атрибут
Да
Form.BevelShape:<Форма объемного региона оформления (INT)> Атрибут получает или изменяет форму объемного региона оформления (горизонтальная линия, вертикальная линия, ящик, рамка).
BevelStyle Реализована Атрибут
Да
Form.BevelStyle:<Стиль объемного региона оформления (INT)> Атрибут получает или изменяет стиль объемного региона оформления (вдавленный, выпуклый).
Folders Реализована Атрибут
Да
Form.Folders:<Режим отображения папок табличного элемента (INT)> Атрибут получает режим отображения папок табличного элемента (отображать в общей структуре, отображать сверху списка, не отображать, отображать только папки).
Value Реализована Атрибут
Да
Form.Value:<Значение (содержимое) визуального элемента> Атрибут получает или изменяет значение визуального элемента. Не для всех элементов значение может быть изменено (к примеру, для таблиц или списков изменять значение нельзя). Для разных типов элементов это значение может иметь разный тип. К примеру, для поля редактирования, тип зависит от типа данных поля, для группы переключателей, это значение принимает целый числовой индекс активного в данный момент переключателя, для картинки, это значение будет представлять объект картинки. Задание OLE-объектов таким образом разрешено, однако, инициализация объектов может происходить в асинхронном режиме, поэтому, после присваивания OLE-объекту, необходимо подождать окончания его полной инициализации.
Tag Реализована Атрибут
Да
Form.Tag:<Произвольное дополнительное значение элемента> Атрибут получает или изменяет произвольное дополнительное значение элемента. Значение может использоваться программно для хранения различной информации, ассоциированной с визуальным элементом.
LayerName Частичная реализация Атрибут
Да
Form.LayerName:<Наименование слоя, которому принадлежит элемент (STRING)> Атрибут получает или изменяет наименование слоя, которому принадлежит элемент. На любой форме существует по крайней мере один слой. Часть слоев может быть видимой, часть не отображаться. Для доступа к свойствам слоев формы, используется атрибут Layers.
DropdownCount Реализована Атрибут
Да
Form.DropdownCount:<Количество строк, показываемых полем со списком при активации списка (INT)> Атрибут получает или изменяет количество строк, показываемых полем со списком при активации списка.
OutlineColor Реализована Атрибут
Да
Form.OutlineColor:<Цвет контура картинки (INT)> Атрибут получает или изменяет количество цвет контура визуального элемента картинки. Цвет представлен 3 байтами (24 бит).
IsHorizontal Реализована Атрибут
Да
Form.IsHorizontal:<Является ли элемент разделителя горизонтальным (INT)> Атрибут получает тип элемента разделителя. 0 -- разделитель вертикальный, 1 -- разделитель горизонтальный.
NoFoldersMode Реализована Атрибут
Да
Form.NoFoldersMode:<Режим отображения таблицы вне структуры папок (INT)> Атрибут получает или изменяет режим отображения таблицы вне структуры папок. 0 -- таблица отображена с учетом папок (если папки поддерживаются), 1 -- папки отражены в общей структуре, как обычные элементы.
Buttons Реализована Функция
Да
Form.Buttons:(<Идентификатор кнопки-связанного элемента (INT)>,<Тип свойства кнопки-связанного элемента (STRING)>,<Новое значение свойства кнопки-связанного элемента>):<Текущее значение свойства кнопки-связанного элемента> Функция позволяет получить доступ к связанным элементам (кнопкам), определенным для текущего визуального элемента. Кнопка задается по цифровому идентификатору. Для получения или изменения доступны следующие типы свойств: Font, Caption, IsDisabled, Hint, Color.
OLE Реализована Атрибут
Да
Form.OLE:<OLE-объект визуального элемента (OLE)> Атрибут получает или изменяет значение OLE-объекта визуального элемента. При изменении объекта, в визуальном элементе создается его копия со всеми текущими настройками, присваиваемый объект не будет тем же самым объектом, что и объект, отображаемый на форме. Инициализация объектов может происходить в асинхронном режиме, поэтому, после присваивания OLE-объекту, необходимо подождать окончания его полной инициализации.
Picture Реализована Атрибут
Да
Form.Picture:<Объект картинки визуального элемента (PICTURE)> Атрибут получает объект картинки визуального элемента. Атрибут используется только для визуальных элементов типа картинка. Применяя функции объекта картинки к полученном объекту, его можно изменить, загрузить с диска и пр. См. статью Картинка.
SetFocus Реализована Функция
Да
Form.SetFocus() Функция позволяет активизировать текущий визуальный элемент (т.е., элемент получает фокус).
SetFilter Реализована Функция
Да
Form.SetFilter(<Наименование фильтра (STRING)>,<Значение фильтра>) Функция работает для табличных элементов, связанных с базой данных и позволяет установить или сбросить один фильтр по его наименованию, остальные фильтры, применяемые к таблице, не будут изменены. Начальные фильтры могут быть заданы в Студии при редактировании формы. Фильтры позволяют отображать содержимое таблицы в требуемом разрезе. Если второй аргумент отсутствует, фильтр будет удален. В наименование фильтра можно включать дополнительные признаки (префиксы), позволяющие задавать способ применения фильтра. Для более полной информации см. статью Стандартные фильтры (простой режим). Пример: Form.MainTab.SetFilter("<>@Status",1). Табличный элемент будет обновлен после каждого применения функции, если необходимо установить несколько фильтров, предпочтительнее пользоваться функциями SetFilters или SetFiltersAndPositionOnElement.
SetFilters Реализована Функция
Да
Form.SetFilters(<Наименования фильтров через запятые (STRING)>,<Значение фильтра 1>,<Значение фильтра 2>...) Функция работает для табличных элементов, связанных с базой данных и позволяет установить фильтры таблицы. Фильтры, не указанные в списке фильтров, будут удалены. Начальные фильтры могут быть заданы в Студии при редактировании формы. Фильтры позволяют отображать содержимое таблицы в требуемом разрезе. В наименование фильтра можно включать дополнительные признаки (префиксы), позволяющие задавать способ применения фильтра. Для более полной информации см. статью Стандартные фильтры (простой режим). Пример: Form.MainTab.SetFilters("<>@Status,>=DocDate,<DocDate",1,'01.01.2025','01.02.2025'). Если необходимо изменить или добавить один фильтр таблицы и не трогать остальные, можно воспользоваться функцией SetFilter.
GetFilters Реализована Функция
Да
Form.GetFilters():<Список текущих фильтров таблицы и их значений (LIST)> Функция работает для табличных элементов, и позволяет получить текущие фильтры таблицы. Имена элементов полученного списка будут представлять имена столбцов таблицы и операции над ними (к примеру, <=DocDate). Значениями будут являться значения фильтров. Данная функция включает как быстрые текстовые фильтры над столбцами таблицы, так и внутренние фильтры (фильтры режима показа по папкам и т.п.), однако, не все режимы могут полностью поддерживаться.
PositionOnElement Реализована Функция
Да
Form.PositionOnElement(<Объект позиционирования>,<Дождаться окончания загрузки и позиционирования в таблице (INT)>=0) Функция используется для обновления содержимого табличного элемента из базы данных и позиционировании его на указанном объекте. Функция может применяться к таблице, дереву или списку, которые привязаны к базе данных. При необходимости, функция может дождаться окончания загрузки и позиционирования, однако, подобный вызов из обработчиков событий может привести к непредсказуемым последствиям, рекомендуется подходить к этому режиму с осторожностью.
SetFiltersAndPositionOnElement Реализована Функция
Да
Form.SetFiltersAndPositionOnElement(<Элемент для позиционирования>,<Наименования фильтров через запятые (STRING)>,<Значение фильтра 1>,<Значение фильтра 2>...) Функция работает для табличных элементов, связанных с базой данных и позволяет установить фильтры таблицы. Фильтры, не указанные в списке фильтров, будут удалены. Начальные фильтры могут быть заданы в Студии при редактировании формы. Фильтры позволяют отображать содержимое таблицы в требуемом разрезе. В наименование фильтра можно включать дополнительные признаки (префиксы), позволяющие задавать способ применения фильтра. Для более полной информации см. статью Стандартные фильтры (простой режим). Пример: Form.MainTab.SetFiltersAndPositionOnElement(aEl,"<>@Status,>=DocDate,<DocDate",1,'01.01.2025','01.02.2025'). В отличие от функции SetFilters, данная функция не только устанавливает фильтры таблицы, но и позиционируется на требуемом элементе таблицы за одно обновление, тем самым включая в нее функцию PositionOnElement.
SortString Реализована Атрибут
Да
Form.SortString:<Порядок сортировки таблицы, связанной с базой данных (STRING)> Атрибут получает или изменяет порядок визуальной сортировки таблицы. Порядок сортировки представляет собой перечисление реквизитов (столбцов) сортировки через запятую с суффиксами направления сортировки. См. также статью UseOrder.
QuickFilters Реализована Атрибут
Да
Form.QuickFilters:<Список с текущими быстрыми фильтрами столбцов таблицы, связанной с базой данных (LIST)> Атрибут получает список, наименованиями элементов которого являются столбцы таблицы, в которых пользователь ввел значения в быстрый фильтр отбора (быстрые фильтры отображаются в заголовках столбиков таблицы, к которым они были применены), значения элементов заполнены текстовыми значениями фильтров.
HeadElement Реализована Атрибут
Да
Form.HeadElement:<Объект, которому принадлежит строчная часть, отображаемая в текущей таблице (DB)> Атрибут получает или изменяет объект, которому принадлежит строчная часть, отображаемая в текущей таблице. Если таблица не отображает строчную часть, использование атрибута не имеет смысла. Изменять объект можно только для строчных частей, которые не привязаны к объекту, открытому в данный момент на форме (см. Object). Т.е., таблица строчной части должна быть свободной, не принадлежащей объекту формы.
FolderElement, Folder Реализована Атрибут
Да
Form.FolderElement:<Папка, для которой отображается содержимое текущей таблицы (DB)> Атрибут получает или изменяет папку (объект), для которой отображается содержимое текущей таблицы (таблица может отображать, к примеру, справочник с папками или строчную часть с папками). При изменении объекта, в таблице будет отображено содержимое указанной папки (произойдет перепозиционирование таблицы).
ParentElement, Parent Реализована Атрибут
Да
Form.ParentElement:<Родительский элемент текущей таблицы (DB)> Атрибут получает или изменяет родительский элемент справочника (объект), которому подчинены элементы текущей таблицы. Изменять атрибут можно только для таблиц, которые не привязаны к объекту, открытому в данный момент на форме (см. Object). Т.е., таблица должна быть свободной, не принадлежащей объекту формы.
SelectedElement Реализована Функция
Да
Form.SelectedElement():<Выбранный в данный момент элемент таблицы или дерева, связанных с базой данных (DB)> Функция получает выбранный в данный момент элемент таблицы или дерева (т.е., элемент на котором установлен курсор). Функция не работает для таблиц, содержащих строчные части (так как строка строчной части не является элементом). Если ни один из элементов не выбран, атрибут возвращает пустое значение. Атрибут заменяет более сложную конструкцию (пример дан для таблиц, без доп. проверок): aTab.Get(aTab.SelectedLine,"@ELEMENT").
SelectedLine Реализована Атрибут
Да
Form.SelectedLine:<Выбранная в данный момент строка таблицы (INT)> Атрибут получает выбранную в данный момент строку таблицы (см. Tab.SelectedLine). Используется, как сокращение конструкции aTab.Value.SelectedLine.
SelectedColumn Реализована Атрибут
Да
Form.SelectedColumn:<Индекс выбранного в данный момент столбца таблицы (INT)> Атрибут получает индекс выбранного в данный момент столбца таблицы (см. Tab.SelectedColumn). Используется, как сокращение конструкции aTab.Value.SelectedColumn.
SelectedColumnName Реализована Атрибут
Да
Form.SelectedColumnName:<Наименование выбранного в данный момент столбца таблицы (STRING)> Атрибут получает наименование выбранного в данный момент столбца таблицы (см. Tab.SelectedColumnName). Используется, как сокращение конструкции aTab.Value.SelectedColumnName.
Reload Реализована Функция
Да
Form.Reload() Функция производит обновление свободной таблицы, связанной с базой данных из базы данных, сохраняя текущую позицию курсора в ней, если это возможно. Обновление выполняется только для таблиц, которые не привязаны к объекту, открытому в данный момент на форме (см. Object). Т.е., таблица должна быть свободной, не принадлежащей объекту формы.
Reinit Планируется Функция
Да
Form.Reinit() Функция помечает все элементы таблицы, как не участвовавшие в визуальном обновлении. В дальнейшем для них будет вызвано одно из визуальных событий OnInitLine или OnShowLine. Функция используется, как простая альтернатива функции InvokeEvent.
RereadValue Реализована Функция
Да
Form.RereadValue(<Новое значение редактирования>) Функция используется для таблицы, в ячейке которой происходит редактирование, функция обновляет содержимое редактора ячейки текущим значением ячейки таблицы (как будто пользователь нажал ESC и отказался от введенного значения, однако, функция не закрывает редактор). При наличии аргумента, функция заменяет редактируемое значение на указанное, а не на оригинальное значение ячейки таблицы. Функцию удобно использовать как результат нажатия на связанный элемент. Это позволяет, к примеру, не выходя из режима редактирования ячейки, выбрать объект редактирования с помощью связанного элемента, либо вернуть значение по умолчанию при нажатии на очистку значения редактирования и пр.
PasteText Реализована Функция
Да
Form.PasteText(<Текст для добавления (STRING)>,<Способ добавления (INT)>=0) Функция используется для поля редактирования и позволяет добавить или вставить произвольный текст в поле. В зависимости от способа добавления текст может быть вставлен в начало существующего текста, в его конец или начиная с позиции, где установлен курсор.
UpdateValue Реализована Функция
Да
Form.UpdateValue() Функция используется для поля редактирования, активного в данный момент, функция обновляет содержимое поля редактируемым значением (текстовые поля могут задерживать обновление до потери фокуса, данная функция форсирует это обновление). Таким образом можно получить значение поля, редактируемого в данный момент. Функцию удобно использовать, если поле текстовое или числовое, для получения значения поля, пока оно все еще активно.
BindToProperty Реализована Функция
Да
Form.BindToProperty(<Наименование реквизита объекта (STRING)>):<Операция выполнена успешно (INT)> Функция используется для привязки текущего визуального элемента к реквизиту редактируемого в данный момент на форме объекта. Визуальный элемент может быть следующих типов: поле редактирования, флажок, группа переключателей, поле со списком. Визуальный элемент должен быть свободным и не привязанным к какому-либо реквизиту. Функция может использоваться, к примеру, в формах макросов, чтобы привязать визуальный элемент формы макроса к определенному реквизиту, вне зависимости от того, где этот макрос будет использован.
BindToObject Частичная реализация Функция
Да
Form.BindToObject(<Наименование объекта (STRING)>):<Операция выполнена успешно (INT)> Функция используется для привязки текущего табличного элемента (на данный момент только дерева) к определенному объекту проекта. Визуальный элемент должен быть свободным и не привязанным к строчной части объекта. Функция может использоваться, к примеру, в формах макросов, чтобы привязать визуальный элемент формы макроса к определенному объекту. Наименование объекта записывается в стандартном виде <Тип объекта>.<Вид объекта>.
SetType Реализована Функция
Да
Form.SetType(<Устанавливаемый тип поля редактирования (STRING)>):<Текущий тип поля редактирования (STRING)> Функция используется для полей редактирования, имеющих сложный составной тип или несколько типов данных. Функция получает текущий тип поля, либо задает его, если указан первый аргумент. Если тип данных поля задан, пользователю не придется выбирать его из списка при начале редактирования поля. Тип данных записывается в стандартном виде <Тип объекта>.<Вид объекта>. (см. DataType).
Lock Реализована Функция
Да
Form.Lock() Функция запрещает выполнения обновления визуальной таблицы или списка при их любом изменении до тех пор, пока не будет вызвана функция Unlock. Для таблицы функция аналогична Tab.Lock и используется, как сокращение конструкции aTab.Value.Lock().
Unlock Реализована Функция
Да
Form.Unlock() Функция разрешает запрещенное ранее функцией Lock выполнения обновления визуальной таблицы или списка при их любом изменении. Для таблицы функция аналогична Tab.Unlock и используется, как сокращение конструкции aTab.Value.Unlock().
IsLocked Реализована Функция
Да
Form.IsLocked():<Обновление запрещено (INT)> Функция проверяет, запрещено ли в данный момент обновление таблицы или списка при их изменении, инициированное с помощью функции Lock. Для таблицы функция аналогична Tab.IsLocked и используется, как сокращение конструкции aTab.Value.IsLocked().

Функции и атрибуты группы страниц с закладками

Функции и атрибуты этой группы применяются к визуальному объекту группы страниц с закладками и позволяют изменять свойства страниц, активировать страницы, прятать или делать их недоступными.

Идентификатор Статус Тип Визуальная Параметры Описание
Pages Реализована Атрибут
Да
Form.Pages:<Объект свойств группы страниц с закладками (FORM)> Атрибут получает объект свойств группы страниц с закладками.
PagesCount Реализована Атрибут
Да
Form.Pages.PagesCount:<Количество страниц (INT)> Атрибут получает количество страниц в группе страниц с закладками. В подсчет включаются невидимые закладки.
SelectedPage Реализована Атрибут
Да
Form.Pages.SelectedPage:<Индекс активной страницы (INT)> Атрибут получает или изменяет выбранную в данный момент (активную) страницу визуального объекта группы страниц с закладками.
Page Реализована Функция
Да
Form.Pages.Page(<Индекс или идентификатор страницы (INT,STRING)>):<Объект страницы группы страниц с закладками (FORM)> Функция получает объект страницы группы страниц с закладками.
IsDisabled Реализована Атрибут
Да
Form.Page.IsDisabled:<Признак недоступности страницы (INT)> Атрибут получает или изменяет признак недоступности страницы группы страниц с закладками.
IsInvisible Реализована Атрибут
Да
Form.Page.IsInvisible:<Признак отображения страницы (INT)> Атрибут получает или изменяет признак отображения страницы группы страниц с закладками.
Caption Реализована Атрибут
Да
Form.Page.Caption:<Заголовок страницы (STRING)> Атрибут получает или изменяет заголовок страницы группы страниц с закладками.
Hint Реализована Атрибут
Да
Form.Page.Hint:<Всплывающая подсказка страницы (INT)> Атрибут получает или изменяет всплывающую подсказку при наведении курсора мыши на заголовок страницы группы страниц с закладками.
Name Реализована Атрибут
Да
Form.Page.Name:<Идентификатор страницы (INT)> Атрибут получает идентификатор страницы группы страниц с закладками.
PageIndex Планируется Атрибут
Да
Form.Page.PageIndex:<Индекс (номер) текущей страницы группы страниц (INT)> Атрибут используется совместно с объектом страницы группы страниц и возвращает индекс этой страницы.

Функции и атрибуты слоев формы, макроса или группы страниц с закладками

Функции и атрибуты этой группы работают со слоями. Слои позволяют прятать и показывать группы элементов. Их удобно использовать, когда использование группы страниц с закладками неудобно. Слои задаются в Студии в общем для формы или для объектов подчиненных форм, такими объектами на данный момент являются Макросы редактора форм и страницы группы страниц с закладками.

Идентификатор Статус Тип Визуальная Параметры Описание
Layers Реализована Атрибут
Да
Form.Layers:<Объект свойств слоев формы, макроса или группы страниц с закладками (FORM)> Атрибут получает объект свойств слоев формы, макроса или группы страниц с закладками. Для группы страниц с закладками, атрибут применяется к объекту выбранной страницы.
DoesLayerExist Реализована Функция
Да
Form.Layers.DoesLayerExist(<Идентификатор слоя (STRING)>):<Существует ли слой с указанным идентификатором (INT)> Функция проверяет наличие слоя по его идентификатору.
GetLayers Реализована Функция
Да
Form.Layers.GetLayers:<Список идентификаторов активных (видимых) в данный момент слоев через запятую (STRING)> Функция получает список идентификаторов активных (видимых) в данный момент слоев через запятую. Пример: Form.оЗакладки.Pages.Page("Основное").Layers.GetLayers().
SetLayers Реализована Функция
Да
Form.Layers.SetLayers(<Активировать слои по списку идентификаторов через запятую (STRING)>) Функция делает видимыми слои по списоку их идентификаторов через запятую. Слои, не указанные в списке будут скрыты. Пример: Form.оЗакладки.Pages.Page("Основное").Layers.SetLayers("Main,Контрагент,Услуга").

Функции и атрибуты объекта главного меню

Функции и атрибуты этой группы позволяют работать с главным меню. В Студии можно задать несколько меню, каждое из которых можно в любой момент показать в клиенте. Таким образом, для разных операторов клиента может быть использовано разное меню. Система также позволяет изменять свойства отдельных пунктов меню программно. Функция Invoke также позволяет вызвать различные системные диалоги и функции, не доступные для вызова другими способами.

Идентификатор Статус Тип Визуальная Параметры Описание
Initialize Реализована Функция
Да
Menu.Initialize(<Идентификатор или индекс (INT,STRING)>) Функция активирует главное меню по его идентификатору (заданному при редактировании проекта), либо его индексу среди всех главных меню. Предыдущее главное меню будет удалено. Функция применима только для визуального клиента.
GetCurrentMenuID Реализована Функция
Да
Menu.GetCurrentMenuID():<Идентификатор, загруженного в данный момент меню (STRING)> Функция получает идентификатор, загруженного в данный момент главного меню. Функция применима только для визуального клиента.
Count Реализована Функция
Да
Menu.Count():<Количество главных меню в системе (INT)> Функция получает общее количество главных меню, заданных при редактировании проекта. Функция применима только для визуального клиента.
MenuName Реализована Функция
Да
Menu.MenuName(<Индекс меню (INT)>):<Идентификатор меню с указанным индексом (STRING)> Функция возвращает идентификатор (наименование) меню по его индексу
ItemCount Реализована Функция
Да
Menu.ItemCount(<Индекс меню (INT)>):<Количество верхних пунктов указанного меню (INT)> Функция получает количество верхних пунктов меню, указываемого индексом.
Invoke Реализована Функция
Да
Menu.Invoke(<Идентификатор или код стандартного действия (INT,STRING)>,<Параметры>) Функция выполняет стандартное действие главного меню (к примеру, вывод калькулятора или вызов административной панели). Действие может быть задано в виде числового идентификатора или строки-кода. См. описание.
Item Реализована Функция
Да
Menu.Item(<Идентификатор или индекс верхнего пункта меню (INT,STRING)>,<Идентификатор или индекс меню (INT,STRING)>):<Искомый пункт меню (MENUITEM)> Функция получает ссылку на пункт меню по его индексу или идентификатору. Если второй аргумент не задан, пункт ищется в активном в данный момент меню, иначе в меню заданном индексом или идентификатором.
Name Реализована Атрибут
Да
Menu.Item.Name:<Идентификатор текущего пункта меню (STRING)> Атрибут получает идентификатор текущего пункта меню.
Caption Реализована Атрибут
Да
Menu.Item.Caption:<Текст текущего пункта меню (STRING)> Атрибут получает или изменяет текст текущего пункта меню.
Check Реализована Атрибут
Да
Menu.Item.Check:<Пометка текущего пункта меню (INT)> Атрибут получает или изменяет пометку (галочку) текущего пункта меню.
Icon Реализована Атрибут
Да
Menu.Item.Icon:<Иконка текущего пункта меню (INT)> Атрибут получает или изменяет иконку текущего пункта меню.
IsCheckable Реализована Атрибут
Да
Menu.Item.IsCheckable:<Автоматически ставить галочку на пункте меню (INT)> Атрибут получает или изменяет режим, когда галочка ставится или снимается автоматически при выборе пользователем текущего пункта меню.
Count Реализована Функция
Да
Menu.Item.Count():<Количество подпунктов текущего пункта меню (INT)> Функция получает количество подчиненных пунктов (подменю) текущего пункта меню.
Child Реализована Функция
Да
Menu.Item.Child(<Идентификатор или индекс подчиненного пункта меню (INT,STRING)>):<Искомый пункт меню (MENUITEM)> Функция получает подпункт текущего пункта меню по его индексу или идентификатору.
Parent Реализована Функция
Да
Menu.Item.Parent():<Родительский пункт меню или пустое значение (MENUITEM,NOTHING)> Функция получает родительский пункт текущего пункта меню, если текущий пункт меню является верхним, функция отдает пустое значение.
Add Реализована Функция
Да
Menu.Item.Add(<Индекс вставки пункта меню (INT)>,<Идентификатор пункта меню (STRING)>,<Текст пункта меню (STRING)>,<Программа для исполнения при выборе пункта меню (STRING)>,<Иконка пункта меню (INT)>,<Режим автоматической установки галочки на пункте меню (INT)>):<Новый пункт меню (MENUITEM)> Функция добавляет или вставляет новый пункт меню в массив пунктов, подчиненных текущему.
Remove Реализована Функция
Да
Menu.Item.Remove(<Идентификатор или индекс пункта меню (STRING,INT)>) Функция удаляет пункт меню, подчиненный текущему по его индексу или идентификатору.

Функции и атрибуты объекта меню кнопки панели задач

Функции и атрибуты этой группы позволяют работать с меню кнопки панели задач. При нажатии правой кнопки мыши выводится стандартное меню, которое можно изменить. Любые пункты нового меню при активации будут вызывать визуальное событие OnTaskbarMenuClick заданное в свойствах формы (см. Визуальные события).

Идентификатор Статус Тип Визуальная Параметры Описание
TaskbarMenu Реализована Атрибут
Да
Form.TaskbarMenu:<Объект меню кнопки панели задач второго уровня (FORM)> Атрибут получает объект меню кнопки панели задач второго уровня текущей формы.
GlobalTaskbarMenu Планируется Атрибут
Да
Form.GlobalTaskbarMenu:<Объект меню кнопки панели задач первого уровня (FORM)> Атрибут получает объект меню кнопки панели задач первого уровня (кнопки панели задач потока).
Clear Реализована Функция
Да
Form.TaskbarMenu.Clear() Функция применяется к объекту меню кнопки панели задач, и производит очистку меню (меню заменяется на стандартное).
IsPresent Реализована Функция
Да
Form.TaskbarMenu.IsPresent():<Задано дополнительное меню (INT)> Функция применяется к объекту меню кнопки панели задач, возвращает 1, если меню задано, 0, в ином случае (стандартное меню).
LoadFromList Реализована Функция
Да
Form.TaskbarMenu.LoadFromList(<Список с пунктами меню (LIST)>) Функция применяется к объекту меню кнопки панели задач, и производит загрузку меню из списка значений, меню, существовавшее до этого, будет очищено. Список может быть многоуровневым (содержать элементы, являющиеся списками). Для элементов меню будут использованы следующие свойства значений списка: представление значения списка (наименование), статус галочки значения списка, иконка значения списка. Если пользователь активирует новый пункт меню, будет вызвано визуальное событие OnTaskbarMenuClick.
SaveToList Реализована Функция
Да
Form.TaskbarMenu.SaveToList():<Список для сохранения пунктов меню (LIST)> Функция применяется к объекту меню кнопки панели задач, и получает текущее заданное меню в виде списка. Многоуровневое меню будет представлено в виде подчиненных списков.
Hint Реализована Функция
Да
Form.TaskbarMenu.Hint(<Новая всплывающая подсказка (STRING)>):<Текущая всплывающая подсказка (STRING)> Функция применяется к объекту меню кнопки панели задач, и получает или изменяет всплывающую подсказку, показываемую при наведении курсора мыши на кнопку панели задач.