![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
$00000000
alice © (2004-07-17 20:25:00)Мастера приветсвую! Есть такая структура: некоторый объект, который ссылается на другой объект ( поле parent), тот в свою очередь может ссылаться на свой parent. Причем последний в иерархии parent = $00000000 (это если посомтреть в отладчике)
Мне нужно раскрутить эту цепочку до самого верха. Впорос в том, что не понятно, когда останавливаться? Сравнение с null не помогает, varisnull тоже.
(А parent этот имеет тип интерфейс)
Поскажите пожалуйста, если кто-то знает?
TUser (2004-07-18 07:21:00) [1]
procedure TForm1.Button1Click(Sender: TObject);
var c:TControl;
begin
c:=Button1;
repeat
Memo1.Lines.Add(IntToStr(integer(c))+' '+c.Name);
c:=c.Parent;
until c = nil;
end;
Черный дембель (2004-07-17 21:59:00) [2]Может Assigned
alice (2004-07-17 20:36:00) [3]Так не выходит.
Если сравнениваю с nil напрямую, получается несовместимость типов. Пробовала приводить к IUnknown получается всегда равно nil.
OSokin (2004-07-17 20:30:00) [4]Попробуй nil.