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

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

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

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

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

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

если я иду назад по папке, то как сделать удаление лишней информации в Labe1.Caption, то есть путь был
С:\windows\system\ , я вышел из нее и чтобы путь сократился до С:\windows\

Код:
{Переход по папкам}
procedure TForm1.ListView1Click(Sender: TObject);
var
path:String;
begin
path:=Path+'\';
path:=Label1.Caption+path+ ListView1.Selected.Caption + '\';
UpdateFile;
Label1.Caption:=Path;
end;
HTTqp вне форума Ответить с цитированием
Старый 07.04.2014, 02:05   #2
XE5
Заблокирован
 
Регистрация: 02.03.2014
Сообщений: 439
По умолчанию

Код:
ShowMessage(ExtractFileDir('c:\windows\system'));
XE5 вне форума Ответить с цитированием
Старый 07.04.2014, 02:57   #3
northener
ПШП
Участник клуба
 
Регистрация: 15.07.2013
Сообщений: 1,894
По умолчанию

Цитата:
Сообщение от XE5 Посмотреть сообщение
Код:
ShowMessage(ExtractFileDir('c:\windows\system'));
Пример кода не соответствует описанию задачи.

Цитата:
Сообщение от HTTqp Посмотреть сообщение
если я иду назад по папке, то как сделать удаление лишней информации в Labe1.Caption, то есть путь был
С:\windows\system\ , я вышел из нее и чтобы путь сократился до С:\windows\

Код:
{Переход по папкам}
procedure TForm1.ListView1Click(Sender: TObject);
var
path:String;
begin
path:=Path+'\';
path:=Label1.Caption+path+ ListView1.Selected.Caption + '\';
UpdateFile;
Label1.Caption:=Path;
end;
Не путай путь (Path) с папкой/каталогом/директорией и т.д. (Dir).
Чтобы иметь возможность указать полное имя файла используй Path, ибо у него на конце стоит спецсимвол. Чтобы иметь возможность ходить по дереву каталогов/папок/директорий используй Dir.

Последний раз редактировалось Stilet; 07.04.2014 в 08:04.
northener вне форума Ответить с цитированием
Старый 07.04.2014, 16:30   #4
Alter
Старожил
 
Аватар для Alter
 
Регистрация: 06.08.2007
Сообщений: 2,183
По умолчанию

Примерно так
Код:
function UpFolderLevl(Path :String):String;
var
 Buf :String;
begin // Убирает одну папку, из пути
 Result := Path;
 Buf := Path;
  // корневой каталог
 If  IncludeTrailingBackslash(ExtractFileDrive(Buf))=Buf then exit; 
 If Buf[Length(Buf)]='\' then
  Delete(Buf, Length(Buf), 1); // убрать слеш с конца
 While Buf[Length(Buf)]<>'\' Do
 begin
  Application.ProcessMessages();
  Delete(Buf, Length(Buf), 1);
 end;
  Result := Buf;
end;
Применить сумеете.
Alter вне форума Ответить с цитированием
Старый 07.04.2014, 16:32   #5
HTTqp
Форумчанин
 
Регистрация: 20.12.2013
Сообщений: 164
По умолчанию

northener, спасибо что пояснил что такое path, не знал что он использует спец символ в конце строки.
Alter, спасибо, за вариант, уже решил, но за код спасибо)
HTTqp вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Путь к БД Tanzor69 БД в Delphi 8 19.05.2013 12:27
Абсолютный путь. Относительный путь. Запутался. Mr_freeman Общие вопросы Web 11 22.03.2013 16:04
Путь к иконке ExtractIcon(0, "путь", 0); Alex1991 Помощь студентам 2 04.02.2012 23:48
Путь к БД stscolt БД в Delphi 4 11.02.2010 17:15
Путь StartMis Общие вопросы Delphi 3 03.10.2008 14:45