Прежде всего, я никогда не писал редактор свойств с нуля, но мне помогли с ним в еще вопрос. См. Принятый ответ там. Это было в Delphi 7, а теперь я начал использовать XE2 и должен убедиться, что мой редактор свойств совместим с как 7, так и XE2.
По сути, это редактор коллекции, с той разницей, что каждый элемент коллекции имеет свой именованный компонент в родительской форме. Есть ли что-нибудь новое в редакторах свойств в XE2, начиная с 7, поскольку это огромный скачок версии?
Я НЕ хочу делать полную копию своего агрегата для разных версий. Я хочу сохранить все возможные версии в одном устройстве.
Изменить
Похоже, что Delphi XE2 имеет те же редакторы свойств, что и Delphi 7, но проблема, с которой я столкнулся, заключалась в том, что, хотя я включал DesignIDE
в свой пакет, он ничего не смог найти, поэтому мне пришлось добавить папку ToolsAPI
в путь к моей библиотеке.
Однако после этого у меня возникла новая проблема.
[DCC Fatal Error] ToolsAPI.pas(18): F1026 File not found: 'DockForm.dcu'
Я потерялся во всей концепции пакетов BPL, требуя других и т. Д.
DesignIntf
,DesignEditors
,DesignMenus
,DesignWindows
и т. Д. - были введены в D6, поэтому они использовались в D7. Создание редактора свойств / компонентов во время разработки в XE2 такое же, как в D7. Создайте пакет, предназначенный только для времени разработки, добавьте пакетDesignIDE
и пакет времени выполнения вашего компонента в его список требований, закодируйте свой класс (классы) редактора по мере необходимости, а затем зарегистрируйте их с помощьюRegisterPropertyEditor()
,RegisterComponentEditor()
и т. Д. Внутри экспортированной функцииRegister()
вашего пакета времени разработки. Если у вас все еще есть проблемы, покажите свой код. - person Remy Lebeau   schedule 08.01.2012