Архив за 14 апреля 2008

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;

Т.е., все данные храню в самом дереве. Знаю, что это не самый лучший способ. Например, во многих случаях, особенно когда необходима не стандартная сортировка или нестандартная обработка данных, правильнее было бы хранить данные в отдельном массиве, а в дереве держать только указатели на нужные данные, но так уж я привык.

Читать далее »