ToolBar#
ToolBar - элемент управления с кнопками.
Контрол-контейнер ToolBar добавляется в шаблоне формы до корневого элемента разметки формы Layout. В контроле ToolBar можно располагать контролы Tool произвольного количества и структуры вложенности.
Примечание
Контрол ToolBar и свойство класса формы toolBar не создаются и не отображаются во вложенной форме или в обозревателе аналитик.
Свойства#
id#
Идентификатор контрола.
Отнаследовано от Control
hint#
Всплывающая подсказка, которая появляется при наведении на контрол.
Отнаследовано от Control
tags#
Позволяет объединять контролы в группы, возвращает массив имен.
Отнаследовано от Control
captionWidth#
Ширина заголовка в колонках (для Bootstrap-верстки).
отнаследовано от Control
editorWidth#
Ширина контрола в колонках (для Bootstrap-верстки).
Отнаследовано от Control
denyRoles#
Список ролей без прав на данный элемент.
Отнаследовано от Control
readRoles#
Список ролей на чтение данных.
отнаследовано от Control
writeRoles#
Список ролей на изменение данных.
Отнаследовано от Control
visible#
Видимость контрола.
Отнаследовано от Control
width#
Ширина контрола.
Отнаследовано от Control
Методы#
items#
Возвращает словарь элементов тулбара, ключом которого является id элемента.
Пример
addItems(viewItems, parentTool)#
Добавление новых элементов.
| параметр | описание |
|---|---|
| viewItems | массив объектов, содержащий описание свойств новых элементов |
| parentTool | ссылка на элемент, в который будут добавлены новые элементы. Если передать null или undefined, то элементы добавятся в toolbar |
Пример
removeItems(idList)#
Удаление элементов.
| параметр | описание |
|---|---|
| idLists | массив id элементов, которые нужно удалить. |
Пример
Tool#
Пример#
В примере кнопка панели с идентификатором nestedTool добавлена как вложенная в кнопку nestedMenu (строки 5-6).
Поскольку контролы Tool функционируют в качестве кнопок на панели инструментов (контрол ToolBar), необходимо обрабатывать взаимодействие пользователя с этими кнопками. Это осуществляется с помощью системного механизма событий и их обработчиков. Каждый контрол системы имеет собственный набор различных событий, которые обрабатываются одинаковым образом. Если обработчики подключаются в шаблоне формы, то они должны быть объявлены в классе формы, который использует данный шаблон.
В описываемом примере указываются обработчики события clicked контролов Tool: используются методы класса формы simpleClick, addNestedTools и addMoreTools. Код этих методов представлен ниже.
В примере также представлено указание других свойств контрола Tool: изображение, заголовок и идентификатор.
Данные методы используются в качестве обработчиков событий нажатия на кнопки панели инструментов и демонстрируют несколько особенностей.
- Метод
simpleTool_clickedпоказывает обращение к системному клиентскому сервису Dialog и вызывает его метод message. - Методы
addNestedTools_clickedиaddButtonsTool_clickedдемонстрируют динамическое создание новых кнопок на панели инструментов.addNestedTools_clickedсоздаёт вложенную структуру кнопок, а методaddButtonsTool_clickedдобавляет кнопки верхнего уровня. Для динамического добавления используется методaddItemsконтролаToolBar. Для создания иерархической структуры контролов в методеaddNestedTools_clickedформируется и передаётся вторым параметром в метод создания элементов (строка 16) идентификатор родительской кнопки, в которую будет вложена новая. - На строке 18 представлен пример добавления обработчика события нажатия на новую кнопку. В добавляемом обработчике используется другой метод системного сервиса Dialog - info.
- В методе
addButtonsTool_clickedна строках 39-42 представлен пример сброса обработчиков события (в данном случае - одного добавленного в шаблоне) и установка нового обработчика.