|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
||||
|
||||
Аналог* проводника windows
Задача: есть массив PathDir с адресами директорий. Нужен аналог проводника windows, который отображает одновременно содержимое всех директорий и позволяет манипулировать их содержимым аналогично проводнику в windows. Для избежания неприятностей в случае, когда в двух разных директориях расположены файлы или директории с одинаковыми названиями, можно к каждому названию добавить префикс, например, порядковый номер в массиве PathDir.
Например: есть директория "c:\DirA" с вложенной директорией "DirA1" и файлом "A.txt", а так же директория "c:\DirB" с вложенной директорией "DirB1" и файлом "B.txt". Используя данный проводник пользователь видит содержимое "c:\DirA" и "c:\DirB", как если бы они находились в одной папке, например "C:\Dir", а именно: "1-DirA1", "2-DirB1", "1-A.txt", "2-B.txt". В случае, если пользователь заходит в директорию "1-DirA1", то он соответственно видит содержимое "DirA1", а при попытке открыть "1-A.txt" - запускается программа, ассоциированная в windows с расширением "txt", например, блокнот, в которую загружается "A.txt". В общем-то как-то так... Убил далеко не один день/ночь... Нужна помощь. За готовое решение готов отблагодарить - пиво/сок/деньги. |
#2
|
||||
|
||||
Используйте ListView + TreeView.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#3
|
|||
|
|||
Можно динамически для каждой папки создать свой Shelllistview
|
#4
|
|||
|
|||
Маньяки.
Пишется все достаточно просто. Только надо понять как это должно отображаться. Как я понял, должно быть видно все когда пользователь находится в корне списка. А вот что надо отображать, если пользователь вошел в одну из папок? |
#5
|
||||
|
||||
В отношении TreeView и ListView - это я уже догадался - который день над этим бьюсь.
Дабы лишние вопросы не возникали по сути самой задачи, прилагаю структуру того, что есть в действительности и чего хотелось бы. Слева на картинке - то, что есть, а справа- то, что должен видить пользователь в случае, если массив DirPath=('D:\Dir1', 'D:\Dir2'). Примечание: 1. названия файлов и папок могут быть любые 2. нумерация в примере введена только для того, чтобы ясно было какой файл/папка из какой директории. |
#6
|
|||
|
|||
Как же можно, который день бьетесь, а кодом не поделились
Вобще идея заменить проводник интересная, но не в таком виде как на скрине |