Главная страница
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.025 c
4-1118140335
Андрей Жук
2005-06-07 14:32
2005.08.07
Функция, обратная wsprintf


3-1120124765
Layner
2005-06-30 13:46
2005.08.07
Как определить тип столбца таблицы?


1-1121740073
Sour
2005-07-19 06:27
2005.08.07
кодировка ip адреса


1-1121686069
Salik
2005-07-18 15:27
2005.08.07
StringGrid


1-1121966481
Андрей Молчанов
2005-07-21 21:21
2005.08.07
Освобождение pidl