Имеются две основные причины для создания редактора компонента. Первая заключается в необходимости добавления пунктов к контекстному меню, отображаемому Проектировщиком форм при выборе компонента. Примером этого служит TNotebookEditor, который обеспечивает два дополнительных пункта меню для перемещения по различным страницам компонента Notebook (Записная книжка). Вторая причина создания пользовательского редактора компонента заключается а потребности изменения действия, выполняемого при двойном щелчке на компоненте.
Пример 13.1.
Например, TDatasetEditor отображает Редактор полей, когда пользователь дважды щелкает на компоненте Dataset (Набор данных).
Все редакторы компонентов в Delphi порождаются от класса TComponentEditor. Этот класс обеспечивает необходимые методы, дающие возможность Проектировщику форм манипулировать им. Подобно редакторам свойств, создание нового редактора компонента требует определения нового класса и замещения некоторых из его унаследованных метолов.
По соглашению классы редакторов компонентов заканчиваются на "Editor"
Пример 13.2.
Например, следующие редакторы компонентов являются предопределенными в Delphi: TDatasetEditor, TNotebookEditor и TReportEditor.