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

Вниз

Определение типа объекта!   Найти похожие ветки 

 
vixic ©   (2002-10-31 10:41) [0]

Вот какой вопросик :o)
Есть List:TList(список), внём хранятся компоненты(ссылки на компоненты) разных типов, дак вот, как узнать к какому типу пренадлежит компонент сслка которого находится List["номер"]?

СПАСИБО! :o)


 
Внук ©   (2002-10-31 10:43) [1]

Ну, типа ClassName, что ли?


 
Skier ©   (2002-10-31 10:43) [2]

>vixic
if TObject(List["номер"]) is TSomeClass then ...


 
vixic ©   (2002-10-31 10:54) [3]

>Skier
НЕРАБОТАЕТ :o(


 
Skier ©   (2002-10-31 10:58) [4]

>vixic
То есть ?!


 
VaS ©   (2002-10-31 11:02) [5]

if TObject(List[54]) is TSomeClass then ...
Note: TSomeClass is your really class.


 
vixic ©   (2002-10-31 11:06) [6]

>Skier
Заработало
if TObject(List["номер"] ^) is TSomeClass then ...

Следующая проблема теперь нужно определить есть ли какое либо свойство у этого объекта?


 
Skier ©   (2002-10-31 11:09) [7]

>vixic
см. модуль TypInfo.pas там всё есть...


 
Skier ©   (2002-10-31 11:12) [8]

>VaS
Note: TSomeClass is your real class.


 
Zemal ©   (2002-10-31 11:19) [9]

>> Vixic
Ну ты и чудо! :) Программируешь в слепую! :) Сначала создаём проблемы, а потом скрепя зубами их преодалеваем! :) Молодчина! :)
Есть один вариант решения твоих проблем - интерфейсы. Почитай надосуге :). Только тебе придётся писать интерфейс к каждому используемому классу :)... гы-гы... это конечно неочень удобно, но другого пути я невижу... дело всё в том, что объекты у тебя в "листе" неумеют сообщать о своих свойствах :(... можешь (ещё вариант) дописывать, к каждому используемому классу, процедуру, которая возвращает список его свойст (но это маразм), а если они имеют одного предка, то сделать такую процедуру абстрактной и перекрывать в потомках... хе-хе... что-то я в дебри с утра лезу! :) Удачи! И смотри не споткнись... палочку купи :).


 
KSergey ©   (2002-10-31 13:31) [10]

Для списка объектов лучше использовать TObjectList. Там несколько полезных, как модно говорить, фич на сей счет.
А дял опереления есть/нет свойства? А надо ли?! Может иначе сделать, и Zemal © (31.10.02 11:19) прав про общего предка? Ну либо смотрите Published свойства и зафиг они нужны.



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

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

Наверх




Память: 0.49 MB
Время: 0.016 c
14-34244
Bis
2002-10-23 13:36
2002.11.11
А не сделать ли из интересных глюков задачки ?


14-34201
Yuraz
2002-10-22 12:34
2002.11.11
Можно ли загрузить архив этого форума в zip за месяц?


4-34311
nefelim
2002-10-02 21:45
2002.11.11
Как можно узнать оригинальный путь файла в Recycle Bin?


1-34101
Sergy
2002-10-31 15:22
2002.11.11
Динамический массив. Найти индекс по значению


1-34040
asdfghqwert
2002-10-30 16:09
2002.11.11
CheckListBox - есть вопросы