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

Видимость и доступность группы элементов

Элементы управления, добавленные группой на форму, сохраняют свои значения видимости и доступности. Доступностью и видимостью всей группы на форме можно управлять. Управление доступностью и видимостью осуществляется при помощи методов ДОСТУП_ГРУППЫ и ПОКАЗАТЬ_ГРУППУ.

Стоит отметить, что эти методы не управляют видимостью и доступность членов группы. Доступность и видимость члена группы обеспечивается одновременным сочетанием доступности/видимости отдельного члена группы и всей группы в целом, причем доступ к признаку доступности/видимости группы из языка невозможен, поэтому применяются методы ДОСТУП_ГРУППЫ и ПОКАЗАТЬ_ГРУППУ, чтобы управлять состоянием всей группы.

При добавлении группы элементов на форму группа всегда видима и доступна.

Для управления видимостью и доступностью члена группы используется стандартный способ через поля видимый и доступный. После изменения значений в этих полях для отображения всех изменений параметров членов группы элементов на форме вызывается метод ОБНОВИТЬ_ГРУППУ, который аналогичен методу ОБНОВИТЬ.

Пример

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

Показать подробное объявление типов для диалогового окна

ФУНКЦИЯ Диалог.код_изменение(ПЕРЕМ РЕДАКТОР: ред)
  ЕСЛИ ред.текст <> "" ТО
    //разрешение доступа ко всей группе
    ДОСТУП_ГРУППЫ(д_вст, ДА)
    //разрешение доступа к члену группы
    д_вст.Редактор1.доступный = ДА
    //синхронизация изменений в поле члена группы с параметрами физ.объекта
    ОБНОВИТЬ_ГРУППУ(д_вст)
  КОНЕЦ_ЕСЛИ
КОНЕЦ_ФУНКЦИИ
  
ФУНКЦИЯ Диалог.Вставка_группы
  //добавляем группу на форму, доступ к группе разрешен
  ДОБАВИТЬ_ГРУППУ(10, 10, д_вст)
  //запрещаем доступ к группе
  ДОСТУП_ГРУППЫ(д_вст, НЕТ)
КОНЕЦ_ФУНКЦИИ

ВЫЧИСЛИТЬ
  ПЕРЕМ Диалог: д
  // д <- данные
  ЕСЛИ д.ПОКАЗАТЬ_МОДАЛЬНЫЙ <> "" ТО
    // д -> данные
  КОНЕЦ_ЕСЛИ
КОНЕЦ

См. также: