Apr14
Finalize
Я часто работаю с VirtualTreeView. Очень удобный и мощный компонент, да еще бесплатный и с открытым кодом. Работу с данными я обычно веду следующим образом:
type
PData = ^TData;
TData = record
Caption: WideString;
Data: WideString;
Count: Integer;
end;
var
lData: PData;
begin
lData := VT.GetNodeData(Node);
if Assigned(lData) then
begin
// Тут код
end;
end;
Т.е., все данные храню в самом дереве. Знаю, что это не самый лучший способ. Например, во многих случаях, особенно когда необходима не стандартная сортировка или нестандартная обработка данных, правильнее было бы хранить данные в отдельном массиве, а в дереве держать только указатели на нужные данные, но так уж я привык.