Solved

Change filename in TSaveDialog

Posted on 2000-02-28
14
496 Views
Last Modified: 2010-04-04
Hi

How do I change the visible filename in a savedialog, the reason to do this is that if you have two filters and select a new one should the filename change its extension to the selected filter (like MS Office).
This also happends when the user click ok but not visible to the user.
0
Comment
Question by:koger
  • 4
  • 2
  • 2
  • +6
14 Comments
 
LVL 8

Expert Comment

by:ZifNab
ID: 2565038
Hi,

Look at OnSelectionChange.

Occurs when the file types displayed in the dialog are changed.

property OnSelectionChange: TNotifyEvent;

Description

The OnTypeChange event occurs when the user selects a new filter from the Files of Type list box at the bottom of the dialog.

Regards, Zif
0
 

Author Comment

by:koger
ID: 2565081
Ok I know this but, how to actually change the visible filename
0
 

Expert Comment

by:Freaky
ID: 2565152
Don't understand what's your problem.
0
 
LVL 27

Expert Comment

by:kretzschmar
ID: 2565167
hi koger,

did you adjusted the filterproperty like
Textfiles|*.txt|Docfiles|*.doc
?

meikl
0
 

Author Comment

by:koger
ID: 2565242
Year I know how to use the filter allright :-)

Try this start the TSaveDialog enter a filename change the filter then the filename will have a the selected extension in MS Office, then try the same think in Delphi the filename doesn't change.
0
 
LVL 6

Expert Comment

by:Jaymol
ID: 2565268
I would have thought this wasn't a problem.  If you just type a filename, it doesn't show the extension anyway.  If you type the extension yourself, then it's your own fault for being daft!  The only way to get the dialog to perform in this way is to create your own.  

John.
0
 
LVL 27

Expert Comment

by:kretzschmar
ID: 2565274
? well, then i would do what zif already suggested, use the event OnTypeChange to append the new suffix, if filename is not empty
0
Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

 
LVL 6

Expert Comment

by:Jaymol
ID: 2565298
That will work.
0
 

Author Comment

by:koger
ID: 2565337
AFAIK the tsavedialog.filename gets updated fine. I just wanted to make it foolproof, but no can do or so it seeems.
0
 
LVL 3

Expert Comment

by:sburck
ID: 2565517
Unfortunately, from the Help file:

"Programmatic changes to FileName have no effect while the dialog is active."

To do this while the dialog box is active (a live change, like in office), you'll have to modify the dialog source itself, or use a third party dialog box.
0
 
LVL 5

Expert Comment

by:TheNeil
ID: 2565830
Or you could write your own using the components on the Win 3.1 component palette

The Neil
0
 
LVL 10

Expert Comment

by:ptmcomp
ID: 2570227
Could you use another OpenDialog (an ActiveX)? There was also the possibility of an window hook of the dialog...
0
 

Accepted Solution

by:
cAkk earned 50 total points
ID: 2578603
First:
you can get dialog's handle at savedialog.OnShow
using savedialog.handle.

then:

 hParent:=getparent(savedialog.handle);
  hEdit:= FindWindowEx(hParent, 0, 'Edit',nil);

now, hEdit is the Editbox's handle.

you can set it's text by using the handle.
0
 

Author Comment

by:koger
ID: 2633976
And for all you others you can change the text with

SendMessage(hEdit,WM_SETTEXT,0,integer(PChar('text')));
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Syntax Check Delphi Seattle IOS app without MAC ? 1 91
Magic Software info 18 125
Create a path if not exists 7 69
control image tags in a string ? 12 110
Objective: - This article will help user in how to convert their numeric value become words. How to use 1. You can copy this code in your Unit as function 2. than you can perform your function by type this code The Code   (CODE) The Im…
Introduction The parallel port is a very commonly known port, it was widely used to connect a printer to the PC, if you look at the back of your computer, for those who don't have newer computers, there will be a port with 25 pins and a small print…
Concerto provides fully managed cloud services and the expertise to provide an easy and reliable route to the cloud. Our best-in-class solutions help you address the toughest IT challenges, find new efficiencies and deliver the best application expe…
With Secure Portal Encryption, the recipient is sent a link to their email address directing them to the email laundry delivery page. From there, the recipient will be required to enter a user name and password to enter the page. Once the recipient …

919 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

16 Experts available now in Live!

Get 1:1 Help Now