Есть у меня VCLObject('Panel_Conditions'), который содержит 2 vcl объекта с именем VCLObject('ConditionObject') только у одного объекта свойство Index = 1, а у другого Index =2.
Конструкция:
CondObj1 := PanelConditions.VCLObject('ConditionObject'); не даёт возможности перебора объектов с разными индексами. Поэтому я получаю всегда только первый объект, а ко второму не могу добраться.
Подскажите, что делать в этой ситуации?

2 VCLObject с одинаковым именем, но разными индексами.
Автор Колючка, 15 июн 2011 13:42
Сообщений в теме: 4
#1
Отправлено 15 июня 2011 - 13:42
#2
Отправлено 15 июня 2011 - 14:09
Навскидку, можно попробовать так:
или так:
CondObj1 := PanelConditions.Child(1); // Do smth with CondObj1 CondObj2 := PanelConditions.Child(2); // Do smth with CondObj2
или так:
CondObjects := PanelConditions.FindAllChildren("имя_свойства_со_значением_ConditionObject", "ConditionObject"); for i := 0 to VarArrayHighBound(CondObjects, 1) do begin CondObj := CondObjects[i]; // Do smth with each CondObj end;
#3
Отправлено 15 июня 2011 - 14:12
Спасибо, огромное!!
Это то что мне было нужно.

Это то что мне было нужно.
#4
Отправлено 16 июня 2011 - 14:53
Вопрос, возникший по использованию Child - есть ли функция, возвращающая количество чайлдов?
#5
Отправлено 16 июня 2011 - 15:57
Вопрос, возникший по использованию Child - есть ли функция, возвращающая количество чайлдов?
у объекта должно быть свойство ChildCount
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных