СообЧа > База Знаний > Программирование > Delphi

Вопрос

Есть ли в природе компоненты, позволяющие реализовать дерево каталогов, как в Проводнике, к примеру? Если нет, как можно реализовать это самому?

Ответ

Стандартных нет. Можно сделать самому, используя TTreeView и TListView. Также используется FindFirst, FindNext.

Делаешь первый вызов FindFirst, получаешь объект, добавляешь узел в дерево. Проверяешь этот объект(DirectoryExist()), если это файл — значит, этот узел последний в ветви. Если же это директория, рекурсивно просматриваешь с помощью того же FindFirst и добавляешь узлы-потомки. Потом вызываешь FindNext и делаешь те же проверки…
Таким образом и строишь дерево каталогов.

Правая часть немного проще. Ставишь процедуру на выбор узла в дереве и в ней заполняешь объектами, содержащимися в этой ветви. Объяснил немного скомкано, но на самом деле тема это очень большая (как и пример, готового нет, а делать на ходу очень долго…). В принципе, существуют готовые компоненты сторонних разработчиков.

Из конференции Expert_FAQ



Copyright © 2000-2004 Сообщество Чайников
Контактная информация