Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2011, 23:35   #1
илья001
Пользователь
 
Регистрация: 18.05.2011
Сообщений: 21
По умолчанию Открытие файла из listbox

Программа файловый менеджер, он из двух listbox один для файлов другой для каталогов в лист бокс где выводятся файлы так же выводится информация о его размере и дате создания файла из за этой информации файл не открывается с помощью ShellExecute. теперь что бы открыть файл с помощью ShellExecute мне нужно создать новый listbox скрыть его и выводить туда только имена файлов и их передавать в ShellExecute т.е я наживаю на файл в listboxt где и имя его отображается и размер и при этом наживается файл и в скрытом Listbox и при двойном нажатии мышь параметр имя передается из срытого Listbox. Ох ну я и на придумывал хотя если есть другие соображения на подобие написать функцию которая считывает только до имени и передает его в функцию для открытия то это еще лучше, хотя про скрытый listbox кто может поможет.
Код:
function GetCatologFile(dir_name: string):TStringList;
var
 searchResult : TSearchRec;
begin
  Result:=TStringList.Create;
  //Получить список файлов в каталоге
  if FindFirst(dir_name+'*', faAnyFile, searchResult) = 0  then
   begin
    repeat
     if FileExists(dir_name + searchResult.Name)//файл существует
      then
       begin
           Result.add(searchResult.Name+' '+Inttostr(searchResult.size)+' '+'Kb'+' '+datetostr(FileDateToDateTime(searchResult.time)));//Добавляем
       
 // если указать только имя все работает)Result.add(searchResult.Name
       end;
а вот и открытие файла
until FindNext(searchResult) <> 0; //Бегаем
    FindClose(searchResult);
   end;
end;
procedure TFormMain.lst_fileDblClick(Sender: TObject);
var
  fn: string;
begin
  if lst_file.ItemIndex<0 then Exit;   
  fn:=lst_file.Items.Strings[lst_file.ItemIndex];
  fn:=dir_cur+fn;//Èìÿ ôàéëà
  ShellExecute(Handle,'open',PChar(fn),nil,nil,SW_SHOWNORMAL);
end;
илья001 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Добавление имен файлов в ListBox и их открытие P@radise Общие вопросы Delphi 18 07.06.2011 15:12
Открытие Excel из списка файлов ListBox anton555sleptsov Помощь студентам 2 16.11.2010 22:48
Открытие папок через ListBox medved6216 Помощь студентам 1 30.03.2010 11:44
Список ListBox из файла и открытие файлов в браузере oduvan4ik Общие вопросы Delphi 3 02.03.2009 23:35
Открытие элементов ListBox через браузер KiDoki Общие вопросы Delphi 7 11.10.2008 00:08