Вниз
Скачать: CL | DM;

ComponentCount (Components[i])... Как формируется?   Найти похожие ветки 

← →
Cosinus ©   (2004-09-22 18:22) [0]

Т.е. очень интересно от чего зависит в каком порядке они перебираются?


← →
basken   (2004-09-22 18:48) [1]

От того в каком порядке они туда попадают.


← →
Cosinus ©   (2004-09-22 18:57) [2]

Куда попадают?
Как список индексов формируется формируется?


← →
basken   (2004-09-22 19:15) [3]

При создании обькта (наследника TComponent) создаваемый объект добавляется в контейнер Ownera.

constructor TComponent.Create(AOwner: TComponent);
begin
 FComponentStyle := [csInheritable];
 if AOwner <> nil then AOwner.InsertComponent(Self);
end;  


И таким образом контейнер наполняется...


← →
DiamondShark ©   (2004-09-22 19:38) [4]

На то нам дадены исходники VCL

procedure TComponent.Insert(AComponent: TComponent);
begin
 if FComponents = nil then FComponents := TList.Create;
 FComponents.Add(AComponent);
 AComponent.FOwner := Self;
end;

function TComponent.GetComponentCount: Integer;
begin
 if FComponents <> nil then
   Result := FComponents.Count else
   Result := 0;
end;


← →
Cosinus ©   (2004-09-23 11:47) [5]

Ок, спасибо.
Сам что то не додумался вчера посмотреть.



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.03 c
1-1096089458
Влад
2004-09-25 09:17
2004.10.10
Синхронизация массивов


3-1094827298
Vasis
2004-09-10 18:41
2004.10.10
Insert, Update, Delete, Refresh SQL


3-1094800875
skr
2004-09-10 11:21
2004.10.10
Создать программно алиас в BDE


4-1094559475
kblc
2004-09-07 16:17
2004.10.10
Как для TRichEdit ...


8-1090328168
asat
2004-07-20 16:56
2004.10.10
TOpenPictureDialog




   Наверх