about SaveDialog -- bug?(0分)

  • 主题发起人 主题发起人 SuperMMX
  • 开始时间 开始时间
S

SuperMMX

Unregistered / Unconfirmed
GUEST, unregistred user!
昨天使用Savedialog突然发现,
TSaveDialog 当在输入框内输入文件名而没有扩展名时,
TSaveDialog.FileName 就没有扩展名, 而不像写字板或其他
编辑器一样, 只要Filter里不是 *.* 就会提供你选择的扩展名.

why? 找源码,原来是dll里的东东,也就没仔细看,
大伙给瞧瞧吧。
 
设置DefaultExt属性了吗?
 
在filter中是有东西的,比如 *.txt 等等,选了一个
就应该有扩展名吧,但它没有,
好象DefaultExt不是干这个的,昨天看了, 给忘了,
 
你试一试就知道了
 
根据FilterIndex判断用户选择的扩展名,自己在程序里面加,呵呵
 
抱歉上面没看清题目,现在看清了. 抱歉!

自己添加吧!
 
听了cakk的提示,回去试了一下,确实与DefaultExt有关
比方说:Filter里有*.txt *.bmp *.*
DefaultExt = '*.txt; *.bmp'
如果你不写扩展名,filter里是*.*, 那么文件扩展名是*.txt
*.txt, *.txt
*.bmp, *.bmp
也就是说,只用Fliter不能自动加上扩展名,得在DefaultExt中
加上。

我看帮助的时候,还以为只是当filter是*.* 和空白时,DefaultExt
才起作用, 不过这样不符合人的一般思维呀,

如果有说错的地方,还请大家指出。
 
接受答案了.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部