|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
06.08.2007, 22:46 | #1 |
Пользователь
Регистрация: 03.08.2007
Сообщений: 37
|
Просмотр файлов в папке и подпапках
Как просмотреть файлы в папке и подпапках?
(Приведите пример кода) |
06.08.2007, 23:36 | #2 |
Пользователь
Регистрация: 06.08.2007
Сообщений: 43
|
Визуально, это можно отобразить следующим образом :
1. На вкладке Samples находишь ShellListView1 и ShellTreeView1. 2. Далее в инспекторе объектов для ShellListView1 находишь свойство ShellTreeView1(будет выделено красным) и в свободное поле делаешь двойной щелчок и у тебя должно там появится ShellTreeView1. 3. Аналогично делаешь для ShellTreeView1 находишь свойство ShellListView1(будет выделено красным) и в свободное поле делаешь двойной щелчок и у тебя должно там появится ShellListView1. Теперь визуально можешь просматревать файлы в папках и подпапках и если я не ошибаюсь запускать их! |
07.08.2007, 08:31 | #3 |
Белик Виталий :)
Старожил
Регистрация: 23.07.2007
Сообщений: 57,097
|
На самом деле все гораздо проще. Можно обойтись и без ShellListView1:
unit Unit1; interface uses shellapi, Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, ShellCtrls; type TForm1 = class(TForm) ShellTreeView1: TShellTreeView; procedure FormCreate(Sender: TObject); procedure ShellTreeView1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); begin ShellTreeView1.Align:=alClient; ShellTreeView1.ObjectTypes:=ShellTr eeView1.ObjectTypes+ [otNonFolders]; end; procedure TForm1.ShellTreeView1Click(Sender: TObject); begin // а это запуск if ShellExecute(form1.handle,'open',pc har(ShellTreeView1.Path), pchar(ExtractFileName(ShellTreeView 1.Path)), pchar(ExtractFilePath(ShellTreeView 1.Path)),1)<=32 then caption:='Не пойдет'; end; end.
I'm learning to live...
|
07.08.2007, 12:58 | #4 |
JAVA BEAN
Участник клуба
Регистрация: 22.04.2007
Сообщений: 1,329
|
А можно просто: FindFirst и FindNext.
|
07.08.2007, 13:22 | #5 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
http://www.programmersclub.ru/labfile
http://www.programmersclub.ru/labmultimedta Mp3-плеер Программа для воспроизведения mp3 файлов. Для запуска программы поместите в каталог с Delphi исходником mp3 файлы и только после этого запускайте проект. Скачать (15 кб) |
07.08.2007, 16:03 | #6 |
Пользователь
Регистрация: 03.08.2007
Сообщений: 37
|
Просмотр файлов в папке и подпаках (ещё вопрос)
А как просмотреть файлы в подпапках с помощью FindFirst и FindNext?
Допустим у меня есть папка D:\Temp procedure TForm1.FindFiles; var SearchRec: TSearchRec; r:integer=0; begin r:=FindFirst('D:\Temp\*.*', FaAnyfile, SearchRec); while r = 0 do begin if ((SearchRec.ExcludeAttr and FaDirectory <> FaDirectory) and (SearchRec.Attr and FaVolumeId <> FaVolumeId)) then r := FindNext(SearchRec); end; Эта процедура просматривает файлы в папке. А как так сделать, чтобы просматривались файлы в подпапках? |
07.08.2007, 16:11 | #7 |
JAVA BEAN
Участник клуба
Регистрация: 22.04.2007
Сообщений: 1,329
|
Рекурсивная процедура для всех найденных папок.
ЗЫ Отсеивай файлы с названиями '.' и '..'. |
07.08.2007, 16:35 | #8 |
Пользователь
Регистрация: 03.08.2007
Сообщений: 37
|
Вопрос
Спасибо! Но можно по подробнее (привести пример кода)?
|
07.08.2007, 16:51 | #9 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
Yar - подобная тема была на форуме, устали объяснять, хотя всё это просто.
Всё что вам нужно есть здесь http://www.programmersclub.ru/labfile http://www.programmersclub.ru/labmultimedta Т.е. исходники с описанием. |
07.08.2007, 16:56 | #10 |
Александр
Администратор
Регистрация: 28.10.2006
Сообщений: 17,501
|
http://programmersforum.ru/showthrea...EF%E0%EF%EA%E5 - вот тема
http://programmersforum.ru/search.php - а вот поиск по форуму |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как сделать поиск файлов в папке | BETONOMESHALKA | Общие вопросы Delphi | 3 | 01.02.2008 22:43 |
Ошибка создания доступа к папке | Oleg-vp | Работа с сетью в Delphi | 4 | 14.01.2008 14:35 |
Доступ к расшареной папке для одного IP | Oleg-vp | Работа с сетью в Delphi | 3 | 14.01.2008 12:55 |
Выбор пути к папке | Македонский | Общие вопросы Delphi | 2 | 28.08.2007 17:01 |
Поиск файлов в папках и подпапках | Format C: | Общие вопросы Delphi | 17 | 04.05.2007 23:31 |