Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.20;
Скачать: CL | DM;

Вниз

Как у компонента создать property типа class of для создания   Найти похожие ветки 

 
amart ©   (2003-11-05 22:56) [0]

Как у компонента создать property типа class of
и выбирать его из списка.
Свойство создается. Но оно не показвается в списке.
Может надо какой редактор запрограммировать.
Это свойство необходимо для последующего создания формы по событию.
with AClass.Create(Application) do
try
Result := ShowModal;
finally
Free;
end;


 
zed11   (2003-11-10 21:08) [1]

Да никак. Заполняй руками в Form.OnCreate


 
Юрий Зотов ©   (2003-11-10 22:49) [2]

type
TMyComp = class(...)
private
FFormClass: string;
public
finction CreateForm(AOwner: TComponent): TForm;
published
property FormClass: string read FFormClass write FFormClass;
end;

finction TMyComp.CreateForm(AOwner: TComponent): TForm;
begin
Result := TFormClass(FindClass(FFormClass)).Create(AOwner)
end;

Это весь компонент. Чтобы свойство FormClass появлялось с выпадающим списком, для него нужно написать и зарегистрировать в IDE редактор. Наследоваться он будет от TStringProperty, а заместить в нем нужно методы GetAttributes и GetValues (они и отвечают за появление и формирование списка).

Последнее - чтобы FindClass не выдала ошибки, до ее вызова класс формы с именем FFormClass должен быть зарегистрирован в программе вызовом RegisterClass(es). Например, в секции initialization.



Страницы: 1 вся ветка

Текущий архив: 2003.11.20;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
3-65773
TATIANA
2003-10-30 10:16
2003.11.20
Хранимые процедуры


14-66063
ev1972@yandex.ru
2003-10-30 10:53
2003.11.20
Как определить, что в буфере клавиатуры есть символы?


8-66021
Бархатный
2003-07-24 14:42
2003.11.20
Загрузить в ImageList


1-65975
amart
2003-11-05 22:56
2003.11.20
Как у компонента создать property типа class of для создания


4-66151
SeLarin
2003-09-25 17:49
2003.11.20
WM_DEVICECHANGE