Solved

Path Dialogs

Posted on 1998-07-30
25
290 Views
Last Modified: 2010-04-04
Can anyone tell me how to get a "Open File Dialog" to get the path only?

I need to make a dialog where the user must select a path only.
0
Comment
Question by:jconde
  • 11
  • 8
  • 6
25 Comments
 
LVL 10

Accepted Solution

by:
viktornet earned 10 total points
Comment Utility
Like this....

OD - Open File Dialog
------------
var Path : string;
begin
  Path := ExtractFilePath(OD.Filename);
end;  
----------
That's all...

Regards,
Viktor Ivanov
0
 
LVL 7

Author Comment

by:jconde
Comment Utility
Thats right viktor, but I need to choose a file in order to run the extractpath fuction!  I just want to select a path from the dialog box.

jorge
0
 
LVL 10

Expert Comment

by:viktornet
Comment Utility
I'm not sure what you need...Would you please explain it again... Thanx...

Regards,
Viktor Ivanov
0
 
LVL 10

Expert Comment

by:viktornet
Comment Utility
You mean you have a listbox or something with the paths of some files, and when you select a path from there you want something to happen? Is that what you want?

Regards,
Viktor Ivanov
0
 
LVL 7

Author Comment

by:jconde
Comment Utility
Viktor:

What I want to do, is to open up the dialog box, and then select a folder (directory) only.  What I don't want to do, is to have to select a file and then extract the path out from it.

Or, do you suggest any other way of accomplishing this task?...I'll say again, I don't want to select a file, I want a path only.  (when you click in a folder, the folder opens, and expects you to select a file....that's what i want to avoid)

bye
jorge
0
 
LVL 10

Expert Comment

by:viktornet
Comment Utility
What you can do is when the Open Dialog execute, even if the user selects a file and press open, then you don't write any code for opening files or anything...Just write the procedure I gave you above to extract the path...when I say path I mean the path to the last sub folder without the name of the file selected...Maybe what I just wrote sounds a little nonsense, but if you want me to write a fast demo for I will, just leave a comment with your e-mail address...Talk to you later...

Regards,
Viktor Ivanov
0
 
LVL 10

Expert Comment

by:viktornet
Comment Utility
Well, I already wrote a demo, so if you want to see it just leave a comment telling me your e-mail address so I can send you the source code...

Regards,
Viktor Ivanov
0
 
LVL 10

Expert Comment

by:viktornet
Comment Utility
There is actually another way which is not maybe the best one...This way is to actually set the DefaultExt property to have a value that doesn't exist in the system....like...

DefaultExt := '*.sss'; this will prevent the opend dialog to show files and there will be only directories...

Regards,
Viktor Ivanov
0
 
LVL 3

Expert Comment

by:vladika
Comment Utility
function SelectDirectory(var Directory: string; Options: TSelectDirOpts; HelpCtx: Longint):Boolean;

From help:
Calling the SelectDirectory function displays the Select Directory dialog box.

Detail see in help.

If it help I hope you do not forget about points :-)

0
 
LVL 10

Expert Comment

by:viktornet
Comment Utility
It's the same thing wethere you choose this OldStyle file dialog box or the official Dilaog Box...It still displays the files.....If you need a specific name of directory you can use ... DirectoryExists...or what you could do is use TSearchRec....with FindFirst, FindNext...and a flag 'faDirectory', which will return all subdirectories in a specified directory....

Regards,
Viktor Ivanov      
0
 
LVL 3

Expert Comment

by:vladika
Comment Utility
When you use OpenDialog user must select file.
When you use SelectDirectory user must select only path.

0
 
LVL 10

Expert Comment

by:viktornet
Comment Utility
Ain't it the same? You can extract the path from the file though, what you can also do is to change the style of the Open Dialog and it will still be the same as the Directory Dialog :), anyway...As I was making research I saw this TFolderBrowse(not sure for the name)component that is exactly what you need... I think I saw it on Torry's Pages...I'm not sure ...Gotta find it somehow....Talk to ya later guys...

Regards,
Viktor Ivanov
0
How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

 
LVL 3

Expert Comment

by:vladika
Comment Utility
> Ain't it the same? You can extract the path from the file though.

It is not the same.
When you use OpenDialog user MUST SELECT FILE.
What will you do if the directory is empty (no files)?
How do you select this directory?


0
 
LVL 7

Author Comment

by:jconde
Comment Utility
Thats the point vladika, I don't want the user to select any files!
0
 
LVL 7

Author Comment

by:jconde
Comment Utility
Can you tell me how to do that please vladika or viktor?

thanx

jorge
0
 
LVL 7

Author Comment

by:jconde
Comment Utility
Can you tell me how to do that please vladika or viktor?

thanx

jorge
0
 
LVL 3

Expert Comment

by:vladika
Comment Utility
Excuse me, I do not understand.
Are you try to use SelectDirectory function?

0
 
LVL 10

Expert Comment

by:viktornet
Comment Utility
Vladika: He needs a Dialog that would display only directories with no files...Like when you go to Start/FindFiles/Browse/...(that's in Windows, not in Delphi)  and it will display only the dirs, and subdirs, without files....I think that's what he is looking for....

Regards,
Viktor Ivanov
 
0
 
LVL 3

Expert Comment

by:vladika
Comment Utility
As Victor say there are many freeware components for this task.
I try TBrowseFolder, TBrowseDialog, TBrowseDirectoryDlg from torry's page (www.torry.ru)
All components with source (you can learn it).
It works fine. Try to use it.

0
 
LVL 3

Expert Comment

by:vladika
Comment Utility
O, SORRY!!!
Viktor

0
 
LVL 10

Expert Comment

by:viktornet
Comment Utility
Vladika: Sorry about what???

Regards,
Viktor Ivanov
0
 
LVL 3

Expert Comment

by:vladika
Comment Utility
I wrote ViCtor. Sorry.


0
 
LVL 10

Expert Comment

by:viktornet
Comment Utility
Don't worry about that...Actually my name is spelled Victor, but in my passport it is written Viktor . That's the reason I use Viktor instead of Victor...Friends???

Regards,
Viktor Ivanov
0
 
LVL 3

Expert Comment

by:vladika
Comment Utility
O'key
0
 
LVL 7

Author Comment

by:jconde
Comment Utility
Thank you both, I got it working!

regards,
jorge
0

Featured Post

Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

Join & Write a Comment

The uses clause is one of those things that just tends to grow and grow. Most of the time this is in the main form, as it's from this form that all others are called. If you have a big application (including many forms), the uses clause in the in…
Introduction Raise your hands if you were as upset with FireMonkey as I was when I discovered that there was no TListview.  I use TListView in almost all of my applications I've written, and I was not going to compromise by resorting to TStringGrid…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, Just open a new email message.  In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…
When you create an app prototype with Adobe XD, you can insert system screens -- sharing or Control Center, for example -- with just a few clicks. This video shows you how. You can take the full course on Experts Exchange at http://bit.ly/XDcourse.

744 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

13 Experts available now in Live!

Get 1:1 Help Now