Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Delphi > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 18.06.2018, 14:13   #1
Etsareva
Форумчанин
 
Регистрация: 26.01.2018
Сообщений: 116
Репутация: 10
По умолчанию opendialog и рекурсивный поиск

добрый день! есть рекурсивная процедура поиска по папкам. в ListBox1 выводится полный путь искомого файла.
как сделать, чтобы с помощью opendialog открывался файл, находящийся по тому пути, который в ListBox1?
Etsareva вне форума   Ответить с цитированием
Старый 18.06.2018, 14:18   #2
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 17,683
Репутация: 6211
По умолчанию

opendialog не открывает файл, а выбирает. Зачем он, если уже имена файлов выбраны?
__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума   Ответить с цитированием
Старый 18.06.2018, 14:25   #3
Etsareva
Форумчанин
 
Регистрация: 26.01.2018
Сообщений: 116
Репутация: 10
По умолчанию

есть такая необходимость. может, я не правильно и делаю даже. задача такая: выбрать файл с определенным именем, который находится в множестве подпапок множества папок. я это сделала через процедуру рекурсивного поиска.
Etsareva вне форума   Ответить с цитированием
Старый 18.06.2018, 14:30   #4
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 23,906
Репутация: 5228
По умолчанию

Цитата:
Сообщение от Etsareva Посмотреть сообщение
выбрать файл с определенным именем, который находится в множестве подпапок множества папок. я это сделала через процедуру рекурсивного поиска.
через процедуру поиска Вы нашли нужный файл.
Дальше что Вы с ним собираетесь делать?
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 18.06.2018, 14:36   #5
Etsareva
Форумчанин
 
Регистрация: 26.01.2018
Сообщений: 116
Репутация: 10
По умолчанию

я нашла только путь к этому файлу и вывела в ListBox1, но не сам файл, теперь мне его нужно выбрать
Etsareva вне форума   Ответить с цитированием
Старый 18.06.2018, 15:02   #6
Etsareva
Форумчанин
 
Регистрация: 26.01.2018
Сообщений: 116
Репутация: 10
По умолчанию

в-общем, чтобы путь файла, который отобразился в ListBox1, попал в Opendialog1.InitialDir
Etsareva вне форума   Ответить с цитированием
Старый 18.06.2018, 15:04   #7
Etsareva
Форумчанин
 
Регистрация: 26.01.2018
Сообщений: 116
Репутация: 10
По умолчанию

т.е., например, если в ListBox1 вот такой путь: \\server-nas\GOST-FA\00000001\00000001\187\ГОСТ Р52745-2007.pdf, то при нажатии на кнопку могла выбрать файл, который находится по этому пути.
Etsareva вне форума   Ответить с цитированием
Старый 18.06.2018, 15:17   #8
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 17,683
Репутация: 6211
По умолчанию

Цитата:
в-общем, чтобы путь файла, который отобразился в ListBox1, попал в Opendialog1.InitialDir
Так например
Код:

  if ListBox.ItemIndex<>-1 then OpenDialog.InitialDir:=ListBox.Items[ListBox.ItemIndex];
  if OpenDialog.Execute then что-то делаем, открываем файл, например. Или запоминаем его полное имя;

__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 18.06.2018 в 15:22.
Аватар вне форума   Ответить с цитированием
Старый 18.06.2018, 15:22   #9
Serge_Bliznykov
МегаМодератор
СуперМодератор
 
Регистрация: 09.01.2008
Сообщений: 23,906
Репутация: 5228
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Так например
Код:

OpenDialog.InitialDir := ...

вряд ли так сработает, ведь в ListBox1 название файла, а не директории...
Serge_Bliznykov вне форума   Ответить с цитированием
Старый 18.06.2018, 15:24   #10
Аватар
Модератор
Заслуженный модератор
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Адрес: Северодонецк.ua
Сообщений: 17,683
Репутация: 6211
По умолчанию

Тоды добавить ExtractFilePath
Код:

  if ListBox1.ItemIndex<>-1 then OpenDialog1.InitialDir:= ExtractFilePath(ListBox1.Items[ListBox1.ItemIndex]);

__________________
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Рекурсивный поиск файлов. Pein95 Общие вопросы C/C++ 2 20.10.2013 02:00
Рекурсивный поиск минимума в массиве Михаил Роганин Помощь студентам 4 17.01.2012 14:30
рекурсивный поиск с возвратом mego4el Помощь студентам 0 25.04.2011 22:45
Рекурсивный поиск zumm Общие вопросы Delphi 7 01.11.2010 23:47
Рекурсивный поиск папок FindFirst Lehanidze Помощь студентам 4 06.08.2009 13:13


15:28.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru