![]() |
|
|
![]()
|
|
| Vyacheslav |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 2124 Регистрация: 25.3.2002 Где: Москва Репутация: 47 Всего: 59 |
Для того, чтобы создать свой редактор для свойства (property), нужно
1. создать новый класс, наследовав его от TPropertyEditor или его потомков. 2. зарегистрировать его. Вот как, например, будет выглядеть редактор для свойства типа AnsiString c выбором значений из выпадающего списка MyPropertyEditor.h class TMyPropertyEditor : public Dsgnintf::TStringProperty { typedef Dsgnintf::TStringProperty inherited; public: virtual TPropertyAttributes _ _fastcall GetAttributes(void) { return TPropertyAttributes() << paValueList; virtual TPropertyAttributes _ _ fastcall GetValues(Classes::TGetStrProc Proc); }; //--------------------------------------------------------------------------- MyPropetyEditor.cpp TPropertyAttributes _ _ fastcall TMyPropertyEditor::GetValues(Classes::TGetStrProc Proc) { Proc("Один"); Proc("Два"); Proc("Три"); } //--------------------------------------------------------------------------- Reg_mycomp.cpp void fastcall PACKAGE Register() { TComponentClass classes0[1] = { _ _ classid( TMyComp) }; RegisterComponents("MyComponents", classes0, 0); RegisterPropertyEditor( *(GetPropInfo( _ _ typeinfo(TMyComp), "MyProp")->PropType), _ _ classid(TMyComp), "MyProp", _ _ classid(TMyPropertyEditor)); } -------------------- С уважением, Вячеслав Ермолаев |
|||
|
||||
![]()
|
| Правила форума "С++ Builder" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C++ Builder | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |