A little background of the program:
The program uses a tabbed interface to work on multiple files at the same time.
I'm trying to change the directory of the OpenDialog so every time I call open a file will show the directory of the file I am working on currently, but even when I set InitialDir
to the file's path it always displays the last opened file directory, not the one I am setting it to.
I tried the following:
if Length(CurrentFileName) > 0 then
begin
OpenFileDialog.InitialDir :='';
SetCurrentDirectory(PChar(CurrentFileName));
OpenFileDialog.InitialDir := ExtractFileDir(CurrentFileName);
end;
if OpenFileDialog.Execute then
...
Where CurrentFileName
is the full path with the filename of the current tab's opened file. But no luck.
Is there any way to achieve this?
So for example:
tab1
has c:\mydir\file.txt
opened
tab2
has d:\someotherdir\somefile.txt
opened
If I move to tab1
and call the open function I the OpenDialog
should show me the contents of c:\mydir\
I am using Delphi 7. Any help is appreciated.