Проблема с TreeView
От: SkifL  
Дата: 04.05.05 09:35
Оценка:
Есть код:

procedure TfrChild.LoadROOT;
var
inRes: integer;
cds: TClientDataSet;
TI: TTreeNode;
dbObj: TDBObject;
begin
cds := TClientDataSet.Create(nil);
WaitForLoadTree(nil);
tvObject.Items.BeginUpdate;
cds.Data := GetListObject(Context, -1, inRes);
while not cds.Eof do begin
dbObj := TDBObject.Create;
dbObj.inID := cds.FieldByName('inID').AsInteger;
dbObj.inType := cds.FieldByName('inType').AsInteger;

TI := tvObject.Items.AddObject(
nil,
cds.FieldByName('stName').AsString,
dbObj
);
TI.ImageIndex := dbObj.inType;
TI.StateIndex := dbObj.inType;
TI.SelectedIndex := dbObj.inType;
TI.HasChildren := true;
cds.Next;
end;
EndLoadTree;
tvObject.Items.EndUpdate;
cds.Free;
end;

Использую собссно для отображения корневого уровня дерева...
Если выборка содержит больше 31 элемента — элементы дерева отображаются после загрузки нормально...
Меньше — появляется полоса прокрутки (якобы элементы загружены), а дерево остается чистым...
Грешил на sql запрос. Но после того как нормально отображаемую выборку ограничил в количестве
элементов — получил тот же результат...

Уже и не знаю на что подумать.
Может ты что подскажешь многоуважаемый ALL.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.