Пример описания компонента интерфейса
В качестве примера рассмотрим группу с кнопкой, которая показывается в форме.
ГруппаСКнопкой — это компонент интерфейса, унаследованный от системного компонента ОбычнаяГруппа. Другими словами ОбычнаяГруппа является его базовым компонентом:
Он имеет собственное свойство НомерНажатия, собственное событие ПриИзмененииСчетчика, переопределяет базовые свойства ЦветФона и Рамка, а также содержит описание экземпляра системного компонента Кнопка, у которого назначен обработчик события ПриНажатии.
ВидЭлемента: КомпонентИнтерфейса
ОбластьВидимости: ВПодсистеме
Ид: 287b8298-cecd-4620-acd7-c74986f47d24
Имя: ГруппаСКнопкой
# Собственные свойства компонента
Свойства:
-
Имя: НомерНажатия
Тип: Число
ЗначениеПоУмолчанию: 0
# Собственные события компонента
События:
-
Имя: ПриИзмененииСчетчика
Тип: СобытиеСДанными<Число>
Наследует:
Тип: ОбычнаяГруппа
# Переопределение базовых свойств
ЦветФона: =Цвета.Желтый
Рамка: Истина
Содержимое:
-
# Описание экземпляра системного компонента Кнопка
Тип: Кнопка
Имя: КнопкаВГруппе
Заголовок: Это кнопка в группе
ПриНажатии: ОбработчикПриНажатииКнопки
Модуль компонента ГруппаСКнопкой содержит обработчик события кнопки ПриНажатии. В этом методе вызывается собственное событие компонента ПриИзмененииСчетчика.
// Обработчик системного события КнопкаВГруппе.ПриНажатии
метод ОбработчикПриНажатииКнопки(Источник: Кнопка, Событие: СобытиеПриНажатии)
// Вызов собственного события ГруппаСКнопкой.ПриНажатии
ПриИзмененииСчетчика(новый СобытиеСДанными(НомерНажатия))
НомерНажатия +=1
// Тестовое уведомление
пер Уведомление = новый Уведомление("Системное событие кнопки",
"Номер нажатия: " + НомерНажатия.Представление())
Уведомление.Показать()
;
Чтобы компонент ГруппаСКнопкой стал виден в интерфейсе, его экземпляр описан в содержимом формы и здесь же назначен обработчик его собственному событию ПриИзмененииСчетчика.
ВидЭлемента: КомпонентИнтерфейса
Ид: 451a456a-8955-4774-94f7-590cc6fcadfc
Имя: ФормаГруппаСКнопкой
ОбластьВидимости: ВПроекте
Наследует:
Тип: Форма
ВключатьВАвтоИнтерфейс: Истина
Содержимое:
# Описание экземпляра компонента интерфейса ГруппаСКнопкой
Тип: ГруппаСКнопкой
Имя: ГруппаСКнопкой
# Назначение обработчика собственному событию группы с кнопкой ПриИзмененииСчетчика
ПриИзмененииСчетчика: ОбработчикПриИзмененииСчетчика
Модуль компонента формы ФормаГруппаСКнопкой содержит обработчик события группы ПриНажатии.
метод ОбработчикПриИзмененииСчетчика(Источник: ГруппаСКнопкой, Событие: СобытиеСДанными<Число>)
// Тестовое уведомление
пер Уведомление = новый Уведомление("Собственное событие группы",
"Номер нажатия: " + Событие.Данные)
Уведомление.Показать()
;
В результате при нажатии на кнопку сначала появляется уведомление от обработчика собственного события группы, а затем — от системного события кнопки.