Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.08.07;
Скачать: CL | DM;

Вниз

TShellTreeView с галочками   Найти похожие ветки 

 
Андрей Молчанов   (2005-07-19 18:19) [0]

Здравствуйте!

Возникла необходимость прикрутить к TShellTreeView чекбоксы. Их-то я сделал, но в ShellTreeView у одного файла может быть несколько экзэмпляров (например, "Рабочий стол -> Мои Докуметы -> Файл.txt" и "Рабочий стол -> Мой Компьютер -> C:\ -> ... -> Мои Докуметы -> Файл.txt"). Как бы сделать, чтобы при выделении одного экзэмпляра, выделялись все остальные? Пожалуйста, помогите!


 
Fay ©   (2005-07-19 18:33) [1]

http://delphimaster.net/view/1-1121694103/


 
Андрей Молчанов   (2005-07-19 18:37) [2]

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


 
Fay ©   (2005-07-19 18:40) [3]

2 Андрей Молчанов   (19.07.05 18:37) [2]
Не понял


 
Андрей Молчанов   (2005-07-19 18:53) [4]

У тебя стоит Microsoft Backup?
Если да, то на закладке, какие файлы бэкапить, находится дерево папок. На первом уровне в нем рабочий стол, на втором Мои Документы, Мой компьютер и Сетевое окружение. Ветвь Мои Документы дублирует по содержанию соответствующую папку в Моем Компьютере. Значит, на один файл может приходиться 2 элемента. Необходимо, чтобы При выделении одного, автоматически выделялся и второй.


 
Fay ©   (2005-07-19 19:11) [5]

2 Андрей Молчанов   (19.07.05 18:53) [4]
>> Необходимо, чтобы При выделении одного, автоматически выделялся и второй.
Так и сделай.


 
Андрей Молчанов   (2005-07-19 19:23) [6]

А как?
Есть событие OnChangeStatus - а как опознать нужный элемент - просканировать все дерево на предмет дубликатов? Слишком долго. Может быть что-нибудь, связанное с PIDL?


 
Fay ©   (2005-07-19 19:37) [7]

2 Андрей Молчанов   (19.07.05 19:23) [6]
Извините, а долго - это сколько?


 
Андрей Молчанов   (2005-07-19 19:47) [8]

Все дерево файловой системы, для проверки надо будет открыть каждый диск, каждую папку - дубликаты могут встречаться не только в этих ветках, в ветке Мой Компьютер, например, есть папки Общие документы и Документы - <имя пользователя>.


 
Андрей Молчанов   (2005-07-21 18:31) [9]

Нашел - при создании каждого элемента присваиваю свойству Data указатель на дублирующие ссылки. Потом при изменении StateIndex обрабатываю и их тоже.



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

Текущий архив: 2005.08.07;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.026 c
3-1119782455
dUM
2005-06-26 14:40
2005.08.07
Поиск нескольких записей с помощью Lookup


3-1120226748
Ландграф Павел
2005-07-01 18:05
2005.08.07
обработка события BeforeAction в DBNavigator


3-1120043176
Тучудище
2005-06-29 15:06
2005.08.07
Когда лучше подтверждать транзакции


14-1120833485
Думкин
2005-07-08 18:38
2005.08.07
Еду домой


1-1121719884
sybrex
2005-07-19 00:51
2005.08.07
самая подходящяя сортировка