Регистрация редактора свойства
Материал из DRKB
Регистрация редактора свойства[править | править код]
Скажем, вы имеете компонент TContainer, содержащий TContainedClass в свойстве с именем 'Contained' - попробуйте добавить следующую строку к процедуре Register вашего компонента:
RegisterPropertyEditor(TypeInfo(TContainedClass),
TContainer,
'Contained',
TClassProperty);
Не забудьте добавить TypInfo и DsgnIntf в список используемых модулей.
Все это задокументировано в справке помощи. Первым параметром всегда идет TypeInfo() с "коллекционируемым" классом в качестве параметра, затем контейнерный класс или NIL, если он должен работать для всех экземпляров контейнерного класса с заданным свойством, затем идет имя контейнерного свойства или , если редактор должен работать для всех свойств, и завершает славную четверку параметров класс TClassProperty, расширяющий классовое свойство, т.е. "создающий" знак "+" в Инспекторе Объектов, позволяющий редактировать вложенные свойства (щелчок на плюсике раскрывает список вложенных свойств описываемого контейнерного класса).
Author: Mike Scott, Mobius Ltd.
Source: Валентина Озерова, Сборник Kuliba
ID: 00037