Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Своство компонента типа строка, но с выпадающим списком...


MJH ©   (2002-08-22 11:49:00) 

как собственно такое сделать?
т.е. скажем есть свойство Data_Table строкового типа...в нем должен выпадать список всех таблиц (он уже есть)...и выбирается одна таблица...
зы...лень копать уже..не себе делаю :)


MJH   (2002-08-22 16:24:00) [1]

ну редакторы писать можес (что со мной...задолбался опечатываться :)....сенкс...а вопрос внатуре глупый :)


vuk   (2002-08-22 12:10:00) [2]

Нужно писать редактор свойства. Строится наследник от TPropertyEditor.
Пример (на названия можно внимания не обращать, это выдрано из готового компонента)

TComponentReferenceProperty = class(TPropertyEditor)
public
function GetAttributes: TPropertyAttributes; override;
function GetEditLimit: Integer; override;
function GetValue: string; override;
procedure GetValues(Proc: TGetStrProc); override;
procedure SetValue(const Value: string); override;
end;

function TComponentReferenceProperty.GetAttributes: TPropertyAttributes;
begin
Result := [paMultiSelect, paValueList, paSortList, paRevertable];
end;

function TComponentReferenceProperty.GetEditLimit: Integer;
begin
Result := 127;
end;

function TComponentReferenceProperty.GetValue: string;
begin
//возвращаем значение свойства
end;

procedure TComponentReferenceProperty.GetValues(Proc: TGetStrProc);
begin
//перечисляем элементы выпадающего списка
end;

procedure TComponentReferenceProperty.SetValue(const Value: string);
begin
//надеюсь понятно что здесь
end;

регистрация:
RegisterPropertyEditor( TypeInfo(string), TFCStoredComponent,
"ComponentName", TComponentReferenceProperty );


kronprince   (2002-08-22 12:04:00) [3]

- ты сам понял что сказал ???

"..лень копать уже.."
- мне тоже лень искать - "..не себе делаю :)"


Наверх

Титульная страница Поиск, карта сайта Написать письмо