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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.04.2014, 23:17   #1
HTTqp
Форумчанин
 
Регистрация: 20.12.2013
Сообщений: 164
Восклицание Файловый менеджер

Подскажите как вывести дату и прочею информацию о папке, а то получается что вся информация, идентичная первой папке:

Вот код:
Код:
{Получение списка файлов и информации о них}
procedure TForm1.UpdateFile(LV:TListView;aPath:String);
var
Handle:THandle;
FindData:TWin32FindData;
temp_ext,Temp_Cap,result:String;
Folders:TStringList;
i,te:Byte;
begin
LV.Items.BeginUpdate;//Начинаем прорисовку списка файлов
LV.Items.Clear; //Очищаем LV
Handle:=FindFirstFile(PChar(aPath+'*.*'),FindData);
if Handle<>INVALID_HANDLE_VALUE then
 try
  Folders:=TStringList.Create;
  while FindNextFile(Handle,FindData) do
  begin
    Temp_Cap:=ExtractFileName(FindData.cFileName); //Имя файлов
    temp_ext:=ExtractFileExt(FindData.cFileName); //Формат(расширение)
    if (FindData.dwFileAttributes and faDirectory)=faDirectory then
    begin
    Folders.Append(Temp_Cap);
    {Пробовал вставлять здесь}
    end
     else
   with LV.Items.Add do
   begin
    if (FindData.dwFileAttributes and faDirectory)<>faDirectory then
    begin
      SubItems.Add(temp_ext);
      SubItems.Add(FloatToStrF(FindData.nFileSizeHigh+FindData.nFileSizeLow,ffNumber,18,0));
    end
      else
      SubItems.Add('');
      SubItems.Add(TimeToDateFile(FindData.ftLastWriteTime));
    end;
   end;
  for i:=0 to Folders.count-1 do with LV.Items.insert(i) do
  begin
   SubItems.Add('[Папка]');
   SubItems.Add('');
   SubItems.Add(TimeToDateFile(FindData.ftLastWriteTime)); //вот это вставлять выше, пробовал
   Caption:=Folders[i];
  end;
  Folders.Free;
  finally
  LV.Items.EndUpdate; //Закончить прорисовку файлов
  end;
end;
я выделил куда пыытался вставить добавление, но они либо не выводило инфу, либо выводило название одной папки и у каждой разная инфа.

2) еще вопрос, код
Код:
{Переход по папкам}
procedure TForm1.ListView1Click(Sender: TObject);
var
path:String;
begin
path:=Label1.Caption;
if Path[Length(Path)]='\' then
begin
path:=Path+'\';
path:=Label1.Caption+path+ ListView1.Selected.Caption + '\';
UpdateFile(ListView1, path); //Обновления листа Лево
Label1.Caption:=Path;
end;
end;
если я иду назад по папке, то как сделать удаление лишней информации в Labe1.Caption, то есть путь был
С:\windows\system\ , я вышел из нее и чтобы путь сократился до С:\windows\


Заранее благодарю!
HTTqp вне форума Ответить с цитированием
Старый 03.04.2014, 01:52   #2
XE5
Заблокирован
 
Регистрация: 02.03.2014
Сообщений: 439
По умолчанию

Вижу эту процедуру уже в пятый раз. Совет. Поборите в себе привычку копипастить. Вопросы отвалятся вместе с привычкой.
XE5 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Файловый менеджер dracula6322 Общие вопросы C/C++ 10 09.09.2013 07:32
C# файловый менеджер VipCodeR Помощь студентам 2 09.02.2012 16:35
Файловый менеджер Яр|/||< (^_^) Общие вопросы Delphi 4 16.10.2011 00:55
Файловый менеджер на C sht0p0r Помощь студентам 3 07.12.2008 16:47