Podawanie, wyświetlanie ścieżki względnej

0

Cześć
Poprzez SelecDirectory w
Potrzebuje zmienić linijkę w kodzie by podawać ścieżkę względną
Tak jest bez względna

AFilesList.Add(APath + fileload.Name

Tak jest sama nazwa pliku

AFilesList.Add(fileload.Name);  

A jak jest ścieżka względna?
Tylko zależy mi by była nie dłuższa od folderu w którym będzie się znajdował program

0

Poprzez SelecDirectory w programie wyszukuje pliki i dodaje je do Listboxa
Katalogi z których wczytuje owe pliki są na różnej głębokości w pod folderach programu.
do listboxa chce wczytać tylko nazwe plików bez rozszerzenia, ale to nie istotne mogą być z tą ścieżką o którą pytam bo to najważniejsze.
Na pewno ścieżkę potrzebuje o folder dwa wyżej niż ten z którego wczytuje pliki do listBoxa (ciężko orzec może się to zmieniać)
Dlatego bezpiecznie jest aby to był folder był to ten w którym jest program lub z góry określony folder z programu aż do wczytanego pliku do listboxa

Np SelectDirectory1
Podaj folder od którego mam dodawać pliki
Select Directory2 + procedura Find już dodaje do Listboxa ścieżkę ale tylko od wybranego folderu w SelectDirecyory1 aż do pliku
Procedurę wyszukiwania i dodawania mam chodzi mi tylko jak ogarnąć tą ścieżkę

wybrany folder\Folder A......\plik

0

Ścieżki względnej nie uzyskuje się poprzez zakropkowanie jej środkowej części; Ścieżka względna (relatywna) to taka, której pierwszy człon (lewa strona) to nazwa dowolnego katalogu (również ..); Ścieżka bezwzględna (zwana też absolutną) to taka ścieżka, której pierwszy człon to litera dysku, np. C:\foo\bar\bald (jeśli o Windows i nazwy plików/katalogów chodzi);

Natomiast kropkowanie jakiejkolwiek ścieżki to zabieg pozwalający na jej skrócenie, co służyć ma jej wyświetlaniu w oknie - jeśli w całości mieści się na ekranie to wyświetla się całą, a jeśli jest zbyt długa to niektóre środkowe katalogi wykropkowuje się (zależnie od oczekiwanego efektu);

W dalszym ciągu nie rozumiem co chcesz zrobić - czytam Twoje posty po raz dziesiąty i widzę w nich tylko chaos.

0

W skrócie jak wyżej
potrzebuje uzyskać skróconą ścieżkę dla edytora pliku konfiguracyjnego bo plików trochę będzie i klepanie tego ręcznie mija się z celem w dodatku będzie ich przybywać

wskazany folder\folder\folder\plik

ButtonClick ->Select Directory1
wskazuje folder od którego chce uzyskać ścieżkę (przykład wyżej) skracam ją i już skróconą formę wyświetlam w Labelu

jeśli da się zrobić tak by uzyskać np. zmienną tak by tylko poniższą linię zamienić w procedurze

var
  LFileRec: TSearchRec;
begin
  if FindFirst(APath + '*.txt', faAnyFile, LFileRec) = 0 then
    try
      repeat
        AFilesList.Add(APath + LFileRec.Name);                     // TUTAJ ZAMIAST APath
      until FindNext(LFileRec) <> 0;
    finally
      FindClose(LFileRec);
    end;
  if FindFirst(APath + '*.*', fadirectory, LFileRec) = 0 then

1 użytkowników online, w tym zalogowanych: 0, gości: 1