Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как создать свой редактор для property, Создание компонентов 
:(
    Опции темы
Vyacheslav
Дата 17.6.2002, 13:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Экс. модератор
Сообщений: 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));
 
        }




--------------------
С уважением, Вячеслав Ермолаев
PM MAIL WWW ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++ Builder"
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по С++ Builder обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Настоятельно рекомендуем заглянуть в DRKB (Delphi Russian Knowledge Base) - крупнейший в рунете сборник материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C++ Builder | Следующая тема »


 




[ Время генерации скрипта: 0.0405 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.