<<
>>

7.5. Элементы формы


Иерархия элементов формы определяет внешний вид и состав отображаемых на форме элементов управления. Существует несколько типов элементов формы:
форма собственно форма, корневой элемент дерева элементов.
поле формы.
декорация формы.
таблица формы,
кнопка формы,
группа формы.
Элементы формы типа поле формы и таблица формы всегда связаны с данными формы.
Если связанный реквизит не указан, или он недоступен на клиенте ввиду ограничения но нравам, или исключен из состава (свойства Просмотр и Редактирование реквизитов формы), ноля не будет видно на форме, и оно будет автоматически удалено прн создании формы в режиме исполнения.
7.5.1. Общие свойства элементов формы
Данный раздел описывает общие свойства элементов формы. Свойства, специфичные дія конкретных элементов, будут описаны ниже.
7.5.1.1. Группа свойств «Основные»
Свойство Положение заголовка определяет, каким образом будет выводиться заголовок элемента. Заголовком является синоним данных, связанных с выбранным элементом формы, если не указано свойство Заголовок у элемента формы. Заголовок всегда оканчивается символом ":" (добавляется системой автоматически).
Прн добавлении элемента в свойстве Данные необходимо указать ссылку на реквизит формы, с которым этот элемент связан. Если элемент формы не связан с реквизитом формы, то он не будет отображен па форме. Если на форму добавляется кнопка, то в свойстве Команда необходимо у казат ь ссылку на команду, которая будет выполняться при нажатии кнопки. Если кнопка не спя іана с командой, то она не будет отображена па форме.
'Элемент формы может находиться в режиме Только просмотр (запрещающем любые изменения), если у него установлено свойство Только просмотр (в конфигураторе или программно), или у группы, в которую он входит, установлено свойство Только просмотр, или связанный с ним реквизит формы имеет признак Сохраняемые данные и у формы установлен режим Только просмотр.
Специальные режимы снят элементов с рекви зитами
Как уже отмечалось, любой элемент, отображающий какие-либо данные, должен быть связан с реквизитом данных формы. Помимо связи с «обычными» реквизитами, доступны еще три специальных режима.
Связь с текущими данными таблиц
Элемент формы может быть связан с реквизитом, представляющим собой колонку таблицы, размешенной на форме. Прн этом в данном тлементе отображаются данные поля текущей строки таблицы. Такая связь допу скается как для полей, так и для таблиц, при этом не требуется, чтобы в таблице отображалась соответствующая колонка. Элемент, связанный с текущими данными, может находиться как в режиме Только просмотр, так и в режиме редактирования. Например, необходимо расположить на форме поле, которое отображает цену для текущей строки товара. Для этого в нужное место иерархии элементов формы добавляем поле (вид ноля ввода может быть как Поле надписи, так и Поле ввода), для которого в качестве данных выбираем (в диалоге Выбор реквизита) Объект.Товары.
Цена. Здесь Объект - это реквизит формы типа Документ конкретного вида. Товары это табличная часть документа, а Цена - реквизит табличной части.
Сея гь с реквизитами через ссылку
Если в данных формы есть реквизиты ссылочных типов (например, СправочникСсылка), то элемент формы можно связать с реквизитом, полученным но этой ссылке. Данные для таких элементов будут получаться автоматически и обновляться при изменении ссылки. Связь с реквизитами через ссылку может быть любой глубины. Элементы, связанные с такими реквизитами, всегда находятся в режиме Только просмотр.
ПРИМЕЧАНИЕ. Для реквшиюв составного типа (включая типы
":•: Ї :никСсьшка, ДокументСсылка и т.д.) недоступно получение реквизитов чере і ссылку.
Например, нужно расположить на форме поле, которое отображает артикул теку щей строки товара. Дія этого нам необходимо добавить в нужное место иерархии элементов формы поле с видом Поле надписи, для которого в качестве данных выбрать (в диалоге Выбор реквизита)
оъ<-Ікт.Товары.Товар.Артикул. Здесь Объект это реквизит формы тина Документ конкретного вида, Товары- это табличная часть документа, Товар - это реквизит табличной части, а Артикул реквизит справочника
Товары.
Связь с итогами коллекции
Элемент формы может быть связан с реквизитами, представляющим собой теговые значения коллекции. Такими реквизитами могут быт ь:
итоги по числовым полям.
количество строк в коллекции.
Элементы, связанные с такими реквизитами, всегда находятся в режиме Только просмотр.
В качестве примера поместим на форму поле, отображающее суммовой итог дія табличной части Товары. Дтя этого в качестве данных поля формы укажем Объект. Товары. ИтогСумма, где Объект - это основной реквизит формы. Товары - табличная часть документа, а ИтогСумма - специальный реквизит. Связь может быть установлена не только для самого элемента.
Также поддерживается установка связи хзя отображения данных » подвале таблицы и в заголовке закладки (группы вида Страница).
В зависимости от типа данных, которые отображает элемент формы (иоле ввода, кнопка и іруппа), с помощью свойства Вид можно задать способ отобра же и и я дан н ых.
Для управления видимостью элементов формы существуют два свойства: Видимость и Пользовательская видимость. Первое свойство можно изменять как в редакторе формы (в конфигураторе), так и программно. Свойство Пользовательская видимость настраивается только в конфигураторе и задает начальную видимость элемента формы в разрезе ролей. Результирующая видимость элемента формы образуется сложением «но И» свойств Видимость и Пользовательская видимость хтя конкретного пользователя. Описание редактирования свойства Пользовательская видимость см. стр. 2-819.
Описание свойств Высота и Ширина (или Количество строк) см. стр. 1-397.
Группа свойств «Использование»
Подробнее про использование свойства Быстрый выбор см. стр. 1-257.
Свойства Связи параметров выбора и Параметры выбора см. стр. 1-258. Если значения свойств Связи параметров выбора и Параметры выбора заданы и в свойствах реквизита объекта метаданных, и в свойствах элемента формы, то значения свойства будут объединены. Объединение будет выполняться «по ИЛІI» (по именам параметров).
Группа свойств «События»
В данной группе собраны ссылки на обработчики, которые предоставляет тот или иной элемент формы.
Картинки элементов
Элементы формы позволяют использовать для своего оформления картинки. Задание картинки возможно двумя способами:
из конфигуратора,
программным способом.
В случае если картинка задается программным способом, может быть установлена либо пустая картинка, либо картинка из библиотеки картинок конфигурации. • Если картинка задается из конфигуратора, то возможен еще один вариант — задание картинки из файла на диске (внешняя картинка). Использование таких картинок рекомендуется только в тех случаях, когда разрабатываются внешние отчеты или обработки, которые могут использоваться в различных конфигурациях и картинка является значимым элементом оформления, в остальных случаях использование таких картинок является нежелательным. Для команд формы и глобальных команд выбрать внешнюю картинку невозможно.
7.5.2. Форма
Описывает визуальные свойства формы. Элемент такого типа всегда существует в единственном числе и находится в корне иерархии элементов. Также в свойствах формы описываются обработчики событий формы.
Режим открытия формы управляется специальным свойством - Режим открытия окна.
Данное свойство описывает, каким образом будет открыто окно:
Независимый форма открывается в немодальном окне, которое является вспомогательным окном приложения.
Блокировать окно владельца - форма открывается в пемодальном окне, в режиме, коїла работа с формой, из которой инициировано открытие текущей формы, блокируется. Данный режим предназначен для форм, в которых вводится мало информации и работа с которыми не гребует длительного времени, например, для ввода элементов справочников, содержащих небольшое количество реквизитов. Этот режим внешне аналогичен модальному открытию формы, однако при открытии из встроенного языки работа модуля не останавливается на время работы открываемой формы. При этом все остальное взаимодействие с формой выполняется как с другими немодальными формами. Гакая форма также открывается во вспомогательном окне.
Форма, открытая в таком режиме, не участвует в поиске уже открытых форм. Если попытаться открыть точно такую же форму (даже с параметром уникальности, установленным в значение Ложь), то форма, открытая и режиме Блокировать окно владельца, не будет найдена и будет открыта новая форма.
Этот режим по умолчанию установлен у следующих форм:
элемент и группа справочника.
узел плана обмена.
элемент и группа плана видов характеристик,
счет.
вид расчета.
задача.
запись независимого регистра сведений. • При открытии формы в блокирующем режиме используется следующий алгоритм определения блокируемого окна:
если в свойстве ВладелецФормы задана форма и зга форма не закрыта, блокируется окно этой формы;
если в свойстве ВладелецФормы задан элемент фирмы и эта форма не закрыт а, то блокируется окно формы, которой принадлежит этот элемент;
в остальных случаях (если в свойстве ВладелецФормы задано значение Неопределено или форма владельца закрыта) блокируется окно, которое является текущим окном клиентского приложения па момент открытия формы.
Свойство Режим открытия окна не оказывает влияния на открьппс формы, если она открывается в модальном режиме, а также прн открытии в уже существующем основном или вспомогательном окне.
Описание правила формирования автоматического заголовка см. стр. 2-1083.
Для формы можно отобразить командную панель (ее расположением на форме можно управлять с помощью свойства Положение командной панели). Состав стандартных команд формы можно регулировать через свойство формы Состав команд.
Если свойство Разрешить изменять форму сброшено, то пользователь не может изменить состав и относительное положение элементов формы в режиме 1С: Предприятие.
Свойство Проверять заполнение автоматически отвечает за проверку заполнения данных формы, іІодробнее о проверке заполнения см. стр. 1-252.
Если свойст во формы Сохранение данных формы в настройках установлено в значение Использовать список, то в списке реквизитов становится доступной колонка Сохранение. Те реквизиты, для которых свойство Сохранение будет установлено в значение Истина, будут сохраняться в хранилище данных формы (подробнее см. стр. 1-209). Для сохранения будет использовано либо хранилище, указанное в свойстве формы Хранилище настроек, либо хранилище, указанное в свойстве Хранилище настроек данных форм конфигурации.
Ятя установки режима Только просмотр у формы существует свойство Тольк П[ м. тр, доступное только для программного изменения. В случае установки пою свойства в состояние Истина следующие стандартные команды станут недоступны (в том числе и при попытке использовать для вызова этих команд сочетания клавиш):
для всех форм:
¦ Восстановить параметры.
табличное поле:
Добавить.
Скопировать.
Удалить.
командам Создать на основании.
расширение формы объекта, записи реї истра сведении, константы:
Записать.
Записать и закрыть.
Провести.
Провести и закрыть.
Отмена проведения.
Старт,
Выполнено.
расширение <|н)рмы выбора настроек:
Завершить редактирование.
Выбрать настройку.
расширение табличного поля для динамического списка:
Пометить на удаление.
Провести,
Отмена проведения. " Создать группу.
Переместить в группу.
расширение табличного поля для списка значений:
Изменить.
Переместить вверх.
Переместить вниз.
Сортировать по убыванию.
Сортировать по возрастанию. - Подбор.
всем командам по изменению следующих коллекций системы компоновки данных:
коллекции настроек.
коллекции доступных полей.
расширение табличного поля для ДанныеФормыКоллекция, Дан- ныеФормыДерево, ДанныеФормыСтруктураИКсллекция:
Изменить,
Переместить вверх,
Переместить вниз,
Сортировать по убыванию.
Сортировать по возрастанию.
Также будут недоступны элементы формы, связанные с этими командами.
Если для формы установлено свойство Только просмотр и основным реквизитом формы является динамический список, то все таблицы, связанные с этим списком, также перейдут в режим просмотра. Кроме того, если заполнено свойство Список групп, то элемент формы, указанный в этом свойстве, также перейдет в режим просмотра. При этом свойство элементов формы Только просмотр не будет изменено.
7.5.3. Поле
Элемент формы Поле предназначен для отображения и редактирования какого-либо реквизита формы. Поле формы может быть нескольких видов:
поле ввода,
поле надписи,
поле флажка,
поле картинки,
поле переключателя,
поле текстового документа,
поле табличного документа,
поле календаря,
поле индикатора.
поле полосы регулирования.
поле диаграммы,
поле диаграммы Ганта,
поле дендрограммы,
поле графической схемы,
поле географической схемы.
поле HTML-документа. Если поле является подчиненным элементом для элемента формы Таблица, то оно может принимать следующие типы:
поле ввода,
поле картинки,
поле надписи,
поле флажка.
Если вставляется поле вида Поле переключателя, то дія него необходимо задать свойство элемента формы Список выбора, который определяет количество и значения переключателей. По умолчанию используется горизонтальное расположение переключателей, Для того чтобы расположить их по вертикали, необходимо изменить значение свойства Количество колонок.
Дія того, чтобы разместить на форме поле ввода со следующими видами: поле табличного документа, поле диаграммы, ноле диаграммы Ганга, поле дендрограммы, ноле і рафнческой схемы, поле географической схемы, необходимо создать реквизит формы соответствующего типа и указать і тот реквизит в качестве данных элемента формы.
Дія того чтобы разместить на форме поле HTML-документа, необходимо создать реквизит формы типа Строка, затем создать поле ввода вида Поле HTML документа и указать созданный реквизит в качестве данных для этого поля. В качестве значения реквизита формы может выступать навигационная ссылка или тексі HTML-документа.
ПРИМЕЧАНИЕ. Работа с реквизитом типа ГеографическаяСхема возможна только на сервере.
Если в поле ввода формы редактируется реквизит, который іаполняется автоматически, но. тем не менее, может заполняться вручную (в крайне редких случаях), то такое поведение можно реализовать с помощью свойств поля ввода Отображение предупреждения при редактировании и Предупреждение при редактировании. Если значение свойства Отображение предупреждения при редактировании равно Отображать, то при попытке начать редактирование ноля «1С:Предприятие» выдаст предупреждение, которое состоит либо из строки, указанной в свойстве Предупреждение при редактировании, либо формируется автоматически.
Дія стандартных полей Код и Номер (дтя объектов с автоматической нумерацией) автоматическая строка предупреждения будет выглядеть как Номер заполняется при записи автоматически, а дія остальных полей автоматическая строка будет выглядеть как Редактирование поля «Имя поля» не рекомендуется.
Lc.ii! значение свойства Отображение предупреждения при редактировании равно Авто, то для стандартных реквизитов Код и Номер будет использоваться значение Отображать, а для остальных полей Не отображать.
Свойство Отображение предупреждения при редактировании также оказывает влияние на свойство поля ввода Пропускать при вводе. Если значение свойства Пропускать при вводе равно Авто, то поле будет пропускаться прн вводе в том случае, если значение свойства Отображение предупреждения при редактировании равно Отображать (или Авто для стандартных полей Код и Номер).
Для реквизита формы типа СтандартныйПериод или Стандарт- наяДатаНачала существуют два способа редактирования:
с использованием одного поля формы, в этом случае можно разместить на форме поле, связанное непосредственно с редактируемым реквизитом. Тогда все редактирование будет выполняться именно в этом поле.
с использованием нескольких полей. При этом можно разместить на форме поля, связанные со свойствами реквизита. В этом случае разработчик может сам реализовывать необходимую логику взаимодействия вариан та стандартного периода п значений дат.
7.5,4. Декорация
Представляет собой оформительский элемент формы. Декорация не связана с данными (реквизитами формы). Декорация может представлять собой надпись или картинку.
СОВЕТ. Рекомендуется использовать декорацию только для неизменяемых текстовых пояснений. Текст, который может изменяться программно, рекомендуется оформлять полем вила поле надписи.
7.5.5. Таблица
Элемент формы Таблица предназначен для визуализации табличных данных. Это может быть динамический список, табличная часть, список значений и т. д.
Положение командной панели таблицы регулируется свойством Положение командной панели элемента формы. Состав стандартных команд, располагающихся в командной панели таблицы, регулируется с помощью свойства Состав команд. Команды, отключенные при редактировании данного свойства, становятся недоступными.
Имеется возможность группировать колонки с помошыо элемента формы Группа. Подробнее об этом см. стр. 1-398. • Для реквизита формы типа СписокЗначений существует выбор, каким образом реквизит будет отображаться. Если выбирается вариант Таблица, то список значении будет выглядеть как таблица с доступными колонками: Значение. Представление. Пометка и Картинка. Если будет выбран тип Поле ввода, то для редактирования списка будет открыто специальное окно.
Также для таблицы, связанной с реквизитом типа писокЗначений. предоставляется стандартный набор команд редактирования, включая команды установки и снятия пометок.
Если таблица связана с реквизитом типа ДинамическийСписок. у которого в настройках списка (свойство реквизита формы Настройка списка) задана группировка, то список всегда будет отображаться в режиме Дерево (свойство элемента формы Отображение), вне зависимости от того, какой режим отображения задан разработчиком. Если для табличного поля, связанного с динамическим списком, установлено свойство Только просмотр, то при открытии из такого списка форм объектов им будет автоматически установлен параметр формы ТолькоПросмотр.
Также дія таблицы, связанной с динамическим списком, имеется возможность управлять обновлением списка при изменении данных с помощью свойства Обновление при изменении данных. Если свойство установлено в значение Авто, то список будет автоматически обновляться при любых изменениях отображаемых данных. Если свойство имеет значение Не обновлять, то список не будет выполнять автоматическое обновление и для обновления списка необходимо явно выполнить команду Обновить (). Если для динамического списка задано автоматическое обновление с указанным интервалом и свойство Обновление при изменении данных установлено в значение Авто, интервал отсчитывается от ближайшего изменения данных, а если в значение Не обновлять- от последнего вызова автоматического обновления или выполнения команды Обновить ().
Для іаблицьі, связанной с основным реквизитом формы типа динамический список, имеется возможность управлять режимом множественного выбора с помощью соответствующего параметра формы. Значение параметра формы МножественныйВыбор будет установлено в одноименное свойство таблицы. Г1рн )том свойство Режим выделения будет установлено в значение Множественный, если параметр формы МножестЕенныйВыбор имеет значенне Истина.
Дія динамического списка, находящегося в режиме выбора, при добавлении нового объекта будет выполнена проверка на соответствие добавленного объекта установленным критериям отбира. п если новый объект удовлетворяет критериям отбора, на него будет установлен курсор в таблице, отображающей динамический список.
Если форма списка плана счетов или справочника с иерархией элементов открывается с установленными параметрами Разг&-итьЗыС .эрКорня, равным Истина, и РежимВыбора равным Истина, то для всех таблиц формы, связанных с основным реквизитом формы (типа Динамичес- кийСписок). будут автоматически изменены значения следующих свойств:
свойство ОтображатьКорень будет установлено в значение Истина,
свойство РазрешитьВыборКорня будет установлено в значение
Истина,
свойство Отображение будет установлено в значение Дерево.
Кнопка
На форме команда отображается элементом формы Кнопка. Кнопка может отображаться в командной панели и просто на форме. В случае своего отображения на форме кнопка может также иметь вид гиперссылки (для этого нужно изменить свойство Вид).
Команда, к которой будет происходить обращение по нажатию кнопки, устанавливается с помощью свойства Команда.
Установленное свойство Только во «Все действия» означает, что по умолчанию кнопка будет находиться в меню Все действия, однако пользователь может сделать кнопку доступной на панели, воспользовавшись специальным редактором.
Группа
При разработке формы имеется возможность различного объединения элементов. Можно объединять поля, страницы формы, команды, колонки.
На форме могут находиться группы элементов управления. Это могут быть группы полей, страницы, группы команд. Также для элементов типа Таблица можно создавать группы колонок.
В редакторе можно создать группы следующих видов:
Обычная группа - предназначена для объединения элементов формы. Такая группа может обладать различными вариантами обрамления.
Командная панель - элемент формы, предназначенный для размещения кнопок и групп. Свойство командной панели Источник команд определяет элемент формы (Форма или элементы формы типа Таблица), который предоставит «свои» команды для отображения в командной панели. Состав команд для отображения в командной панели регулируется свойством Состав команд элемента формы, являющегося источником команд. Группа, добавляемая в командную панель, может быть одного из следующих вилов:
¦ Подменю - группа, которая позволяет делать выпадающие меню.
Группа кнопок - позволяет создать группу кнопок, которые будут обладать следующими свойствами:
* группа кнопок отделяется разделителями слева и справа.
¦ каждая ipynna кнопок может обладать собственным источником команд.
Страницы данная группа предназначена для организации панели с закладками. Для того чтобы добавить на такую панель страницы, необходимо добавить столько вложенных групп, сколько страниц должно быть у панели. Внутри группы вида Страницы могут располагаться только группы вида Страница:
Страница- группа специального вида, которая предназначена дія формирования страниц панели. Данная группа может содержать другие вложенные элементы.
Группа колонок - позволяет объединять колонки в таблице. С помощью группы этого вида можно изменять правило группировки колонок (вертикальная иди горизонтальная группировка).
Группы могут быть вложенными.
Элементы формы можно перемещать между группами. При этом автоматически определяется допустимость такого переноса. В случае если перенос требует изменения каких-либо свойств элемента (например. Вид), изменение осуществляется автоматически. Если в результате изменились требования к подчиненным элементам, они либо автоматически изменяются, либо удаляются.
Свойство Только просмотр группы влияет на все элементы, подчиненные группе.
Если \ [руины укатано свойство Данные заголовка, то іти данные будут автоматически отображаться в заголовке группы. Если у группы установлено свойство Заголовок, го Данные заголовка отображаются н скобках после заголовка: Заголовок (Данные заголовка).
Любая группа кнопок (командная панель, подменю, группа кнопок, контекстное меню) заполняется по одинаковым правилам. Кнопки будут отображены в следующем порядке:
1. Кнопки, предоставляемые источником команд, с которым связана данная группа.
Кнопки командного интерфейса, если источник команд подразумевает его включение.
Пользовательские команды, добавленные в данную группу.
Команды меню Все действия (только дія командной панели).
Последней будет размешена Справка (в том случае если она была предоставлена источником команд).
Если вышеприведенный автоматический порядок расположения кнопок в группе не усграиваст. то можно воспользоваться следующими возможностями:
выключить флажок Автозаполнение для командной панели формы, контекстного меню или командной панели )л смен та и добавить нужные команды (в нужном порядке) вручную;
отключить источник команд командной панели, затем добавить нужные команды (в нужном порядке) вручную, затем добавить группу типа Группа кнопок и у становить для добавленной группы источник команд:
можно вручную разместить кнопку, связанную со стандартной командой источника команд, в необходимом месте командной панели. В этом случае соответствующая команда не будет автоматически размещена в командной панели.
7.5.8. Специальные командные панели
Кроме создания собственных командных панелей (элемент формы Группа вида Командная панель) редактор форм предоставляет возможность работать со специализированными командными панелями:
командная панель формы- система предоставляет командную панель формы. Ее видимостью, положением п наполнением можно управлять. Видимость п положение панели управляются с помощью свойства формы Положение командной панели, а содержимое управляется свойством Автозаполнение специальной группы Командная панель. Кроме стандартных команд, которые могут быть добавлены на командную панель формы, туда автоматически добавляются команды из раздела Командная панель формы глобального командного интерфейса.
Если основным реквизитом формы является динамический список и у командной панели формы у становлено свойство Аетозаполнение. то в нее автоматически будут добавлены команды, предоставляемые этим динамическим списком. Если на форме также присутствует тлемент формы, отображающий дерево, то командная панель формы будет дополнена командами, которые предоставлены реквизитом, связанным с таким элементом.
командная панель таблицы системой автоматически предоставляется командная панель для элемента формы вида Таблица. Ее видимостью. положением и наполнением можно управлять. Видимость и положение панели управляются с помощью свойства формы Положение командной панели, а содержимое управляется свойством Автозаполнение специальной группы Командная панель.
контекстное меню элемента имеется возможность модифицировать стандартное контекстное меню элемента формы. Дія этого контекстное меню необходимо отобразить в дереве элементов формы с помощью команды контекстного меню Показать контекстное меню элемента формы.
Во все вышеперечисленные командные панели можно добавлять собственные команды, которые создаются с помощью редактора команд.
Если есть необходимость разместить команды, расположенные в командной панели формы (см. стр. 95). в какой либо командной панели, то необходимо выполнить следующее:
разместить в командной панели элемент Группа - Командная панель.
выбрать эту і рунну в качестве источника команд Глобальные команды командной панели формы.
Если в командной панели или контекстном меню, содержащем группу с источником команд Глобальные команды командной панели формы есть группа, для которой установлен источник команд Форма, то при заполнении этой группы команды, относящиеся к командному интерфейсу формы, не добавляются.
7.5.9. Общие особенности поведения элементов формы
В режиме ТолькоПросмотр, который установлен как для конкретного элемента, так и для формы в целом, поля формы вида надпись, картинка, декорация-надпись, декорация-картинка отображаются незаирещенными.
Если для поля вида надпись или картинка свойство Гиперссылка установлено в значение Истина, то при выборе гиперссылки (с помощью клавиши ENTER или двойного щелчка мыши), будет срабатывать обработчик- события элемента формы Нажатие. Разработчику необходимо самому выполнять обработку свойства ТолькоПросмотр у формы или соответствующею элемента и выполнять соответствующие действия (например, по блокировке данных дія редактирования).
Элемент формы Кнопка, связанный с командой, у которой свойство Изменяет сохраняемые данные имеет значение Истина, будет отображаться запрещенным, если для него (или формы в целом) установлено свойство
ТолькоПросмотр равным значению Истина. • 7.5.10. Правила размещения элементов формы
В общем случае можно определить правила размещения элементов формы
следующим образом:
элементы формы размещаются в горизонтальном (каждый новый элемент формы располагается правее предыдущего) или вертикальном (каждый новый элемент формы располагается ниже предыдущего) направлении (в зависимости от свойства формы Группировка), без ограничения по количеству отображаемых элементов.
порядок отображения элементов определяется порядком их расположения на закладке Элементы редактора формы.
размер формы (и элементов формы) может быть ограничен свойствами Ширина и Высота (или Высота в строках таблицы).
в случае если при размещении элементов заданные размеры формы будут превышены, в форме появятся линейки прокрутки.
если отображаемый элемент является группой, то правила размещения элементов формы внутри группы эквивалентны правилам размещения внутри формы.
Несмотря на простоту алгоритма, у разработчика есть несколько способов
существенно вмешаться в этот алгоритм и повысить удобочитаемость формы:
группы элементов формы,
размеры элементов.
ширина подчиненных элементов.
Далее мы рассмотрим подробнее каждую из перечисленных возможностей.
IUHІМАИИК! При размещении шементов одновременно работают и основные
правила размещения, и дополнительные правила, которые рассмотрены ниже.
7.5.10.1. Группы и объединение элементов формы
Дія объединения элементов формы доступны несколько видов элемента
формы Группа:
Командная панель - не позволяет изменять правила размещения, установленные для родительского элемента формы (другой группы или формы).
Страница позволяет изменять правила размещения элементов.
Обычная группа позволяет изменять правила размещения элементов.
Группа колонок - позволяет изменять правила размещения элементов (колонок таблицы формы).
Для группы вида Обычная группа или Страница можно задавать группировку (свойство Группировка) элементов и ширину подчиненных элементов (свойство Ширина подчиненных элементов). Опишем пример использования такой группировки.
а д-^. З^ТЕ-ро. ^р^ь^п, _ПХ Ъ Ж J х
Ре«®»ЭйТ
Испої і 8Sen
KoM»rat» nar^Tfc
Немее
Дата
Осг»«заі*,»
1
in.
0 ЩПроис»
Нгиер Пата
...a
Пгставшія
5=3 Фссмз _J Мод уть
Рис. 112. Вер шкальная группировка
Рассмотрим создание формы документа. При этом группировка элементов формы выбрана как Вертикальная, но мы хотим, чтобы реквизиты документа Дата и Номер располагались не в двух строках, а в одной.
Для этого мы создадим группу с именем ДатаИНомер, установим свойство Группировка в значение Горизонтальная и поместим туда элементы формы Номер и Дата.
_ ? X ът * х
Реквизит
& 0 X 1» «
Э ^ориа
Командная пан.
Мспо! а воегц
— Номер I Па.
< Ре ^ Ко
— Элемента
5 Комодный інтерфейс Прооест и закрить і ц| Щ Поовесзд
Да ті .і ?ч.иеі; Ьомео 51 54 її X » f Ообрахе»»* Г»»«<а • ' |Гругторсе«а Гс**і»»талвг»аа н Ці«о»<а элементов Лет. i*»»s объекта Им» ГЛие Рис. 113. І ори дентальная группировка
ПРИМЕЧАНИЕ. Следует отметить, что группы могут иметь неограниченную вложенность. При этом свойство Группировка может быть разным дія каждой вложенной группы.
Размеры элементов формы
Для каждого элемента формы можно задать размеры - высоту и ширину. Размеры задаются в абстрактных единицах измерения. Реальный размер элемента формы в режиме «1С:Предприятие» может не совпадать с указанными размерами. Изменение шрифта элемента формы не влияет на его размеры.
Если размеры заданы равными 0, то платформа будет вычислять размеры автоматически, стремясь к наилучшему отображению формы иа экране.
Если размеры заданы отличными от 0, то действуют следующие правила:
размер, заданный для родительского элемента, ограничивает размеры подчиненных элементов:
размер, заданный для подчиненного элемента, изменяет размер родительского элемента до тех пор, пока не нарушается предыдущее условие.
Если размер родительского элемента задан таким образом, что подчиненные элементы не помещаются в отведенное место, то действуют следующие правила:
если они не помещаются по высоте, добавляется вертикальная полоса прокрутки;
если они не помещаются по ширине, уменьшается их размер так, чтобы они отображались без горизонтальной прокрутки. Тем не менее горизонтальная прокрутка появится в форме, если уменьшить ее ширину так. что элементы больше не смогут уменьшаться по ширине.
Ширина подчиненных элементов
При проектировании форм возникают ситуации, когда нужно расположить элемент ы формы в две колонки, шириной колонок подчеркнув их значимость.
Для решения первой задачи (размещение в две колонки) необходимо использовать группы, а для решения второй задачи - использовать свойство Ширина подчиненных элементов (для групп, имеющих горизонтальную группировку элементов). ВНИМАНИЕ! Следует помнить, что свойство Ширина подчиненных элементов
оказывает влияние на размещение элементов формы только тогда, когда у
родительской группы установлена горизонтальная группировка н существуют только
две подчиненные группы.
Это свойство может иметь следующие значения:
Авто - ширина элементов подбирается системой автоматически.
Одинаковая выбирается одинаковая ширина элементов.
Левый широкий ширина левого элемента относится к ширине правого элемента как 3:2.
Левый очень широкий ширина левого элемента относится к ширине правою элемента как 2:1.
Левый узкий- ширина левого элемента относится к ширине правого элемента как 2:3.
Левый очень узкий - ширина левого элемента относится к ширине правого элемента как 1:2.
Рассмотрим это на примере. ж Д»«Т*»« ЗвяюТовфо» ФоржОжрсня _ П X ^ ^ X * ^ ~ [ъш & х — «и Ксиандоя памел» * - —і Шапка Щ Е
Организации |
Поставщик Ў Правая а * Номер
Дата Ў * і РеКШЗГТ Ислопв» ТИП - всегда
4 e ESS] (ІЬкуненЮбье g Злеме*ть а Командны* интвроейс S Рекызигь Кймйкди з Параметри ПроЦССШ И мири lb .. 1\>СЕ«1ТП' Все nettCtDIB •
"tew ¦ ГУніЮТ
Оргачтзаиив ... Q Номер По ста ад и» ... <Х Дата Форка 1 МоауРе • Рис. 11-1. Ширина подчиненных элементов
Допустим, нам необходимо, чтобы в шапке документа было две колонки. В одной (левой) должны быть реквизиты Покупатель и Склад, а в другой (правой) реквизиты Вид цен и Валюта взаиморасчетов. При этом мы считаем, что левая колонка является более значимой, и мы хотим увеличить ее ширину.
Дія ЭТОГО создаем группу Шапка Н задаем в ней тип группировки Горизонтальная. В пой группе создаем еще две группы: Левая п Правая. Каждая группа имеет тип группировки Вертикальная. В группу Левая поместим реквизиты Покупатель и Склад, а в гру ппу Правая реквизиты
ВидЦен и Валюта.
Затем у группы Шапка установим свойство Ширина подчиненных элементов в значение Левый очень широкий.
ПРИМЕЧАНИЕ. Основное предназначение свойства Ширина подчиненных элементов состоит в гом. чтобы указать платформе, какие пропорции следует соблюдать прн формировании формы
7.5.11. Механизм перетаскивания
В «1С:Предпрнятии» поддерживается операция перетаскивания. С ее помощью возможно осуществлять перенос данных между ратными элементами формы. Например, можно переносить элементы списка справочника из одной группы в другую, переносить данные из табличного поля в поле табличного документа или перенести список выделенных файлов из проводника Microsoft Windows в какой-либо элемент формы.
Операции перетаскивания поддерживают следующие элементы формы:
таблица формы,
поле табличного документа,
поле календаря,
поле картинки,
декорация-картинка.
При операциях перетаскивания используются следующие термины:
источник данных элемент формы, из которого можно перетаскивать данные:
приемник данных элемент формы, в который можно перетаскивать данные.
Существует возможность разрешать или запрещать элементам управления предоставлять или принимать данные, т. е. быть источником или приемником данных. Для этого у элементов формы существуют следующие свойства:
Разрешить начало перетаскивания - разрешает элементу формы предоставлять данные. Разрешить перетаскивание- разрешает элементу формы принимать данные. Эти свойства можно устанавливать из палитры свойств или из встроенного языка.
При нажатии кнопки мыши на выделенной области элемента управления у элемента управления источника данных вызывается обработчик события НачалоПеретаскивания. В качестве параметров данного события передаются объекты типа ПараметрыПеретаскивания и СтандартнаяОбработка. Параметр ПараметрыПеретаскивания имеет следую-щие свойства:
Значение- содержит перетаскиваемое значение, например, хтя табличного поля это может быть ссылка на объект, хзя табличного документа область табличного документа, х'ія календаря - дата. Можно присвоить этому свойству свое значение (например, какую-нибудь структуру), тогда это значение будет являться перетаскиваемым объектом.
Действие - указывает действие перетаскивания п является значением типа ДействиеПеретаскивания.
ДопустимыеДействия - указывает допустимые действия перетаскивания и является значением типа ДопустимыеДейст- вияПеретаскивания. При помощи этого свойства можно указать, какие операции возможны с данными источника данных (например, только копирование).
Параметр СтандартнаяОбработка позволяет разрешить или запретить стандартную обработку операции перетаскивания из данного элемента управления. Для события НачалоПеретаскивания стандартной обработкой является начало перетаскивания данных.
Далее у элемента формы- приемника данных вызывается обработчик события Проверка Перетаскивания. Данный обработчик вызывается всякий раз, когда курсор попадает на новый объект в элементе формы - приемнике данных (например, в новую ячейку таблицы или поля табличного документа, при попадании в новую дату в поле календаря). Набор параметров данного события зависит от элемента формы - приемника данных, но первые два параметра у всех одинаковы. Это объекты типа ПараметрыПеретаскивания н СтандартнаяОбработка. Остальные параметры описывают объект под курсором. При обработке данного события можно управлять видом курсора, т. е. например, указывать, что перетаскивание в данный элемент управления запрещено или возможно только копирование. Для этого необходимо установить необходимое действие в свойстве Действие параметра ПараметрыПеретаскивания. Необходимо учитывать, что устанавливаемое действие перетаскивания должно быть разрешенным, т. е. пе вступать в противоречие со значением свойства ДопустимыеДействия. І Іанример, действие Копирование не вступает в противоречие со значением допустимых действий КопированиеИПеремещение, а значение Перемещение вступает в противоречие со значением допустимых действий Копирование. Параметр СтандартнаяОбработка используется для указания возможности стандартной обработки элементом формы данного события. Стандартная обработка перетаскивания зависит от типа элемента управления:
для таблицы проверяется возможность вставки значения, т. е. проверяется тип значения, и если он совпадает с типом отображаемых данных, то производятся стандартные действия. Стандартные действия дія иерархических динамических списков— перемещение в группу, ДІЯ таблиц, отображающих наборы записей или табличные части. - изменение порядка строк п копирование.
дія поля табличного документа - проверка возможности вставить передаваемое значение.
дзя поля картинки и календаря стандартной обработки нет.
Если отпустить клавишу мыши в элементе формы - приемнике данных, вызывается обработчик события Перетаскивание. Набор параметров этого события тот же. что и у события ПроверкаПеретаскивания. Параметр СтандартнаяОбработка позволяет разрешить или запретить стандартную обработку события элементом формы. Стандартные действия перетаскивания описаны выше.
Затем в элементе управления - источнике данных вызывается обработчик события ОкончаниеПеретаскивания. При обработке этого события элемент формы приемник данных может, например, удалит ь перемещенные данные или очистить какие-либо переменные.
<< | >>
Источник: А.Алексеев, А. Безбородое, Д. Бескоровайнов. 1С:Предприятие 8.2. Руководство разработчика. 2009
Помощь с написанием учебных работ

Еще по теме 7.5. Элементы формы:

  1. 4. ФОРМЫ ГОСУДАРСТВА, ОСНОВНЫЕ ФОРМЫ ПРАВЛЕНИЯ
  2. 11.2. ЭЛЕМЕНТЫ ИНФРАСТРУКТУРЫ
  3. ЭЛЕМЕНТЫ И ПОЛЯ
  4. ЭЛЕМЕНТЫ
  5. Физика элементов
  6. 4.1. Элементы налогов
  7. 20.2. Элементы налогообложения
  8. 11. ЭКСТАЗ И РАВНОВЕСИЕ ЭЛЕМЕНТОВ
  9. 2. СТРУКТУРА РЕКЛАМЫ. ЭЛЕМЕНТЫ И КОМПЛЕКСЫ
  10. § 3. Понятия «система», «элемент», «структура»
  11. Пятый элемент
  12. Элементы проекта
  13. Недоказуемые элементы
  14. ЭЛЕМЕНТЫ КОМПОЗИЦИОННОГО СТРОЯ
  15. Элементы финансовой отчетности
  16. 10.2. Понятие и элементы трудовой среды
  17. 2. Элементы кредитной политики
  18. Основные элементы аудиторского заключения
  19. 2. Элементы организации труда