(转载)与OpenDialog相关的一个问题

OpenDialog的一个问题
有一个功能要求就是【每次打开文件的对话框的默认路径是上一次保存文件的路径】,本来这个就是设置OpenDialog控件的InitialDir属性就行了,但是第一次打开的时候还行,把文件保存在另一个目录下,再打开OpenDialog对话框时弹出的还是第一次的目录,让人很不解。。。但是SaveDialog对话框,满足上面提到的要求,OpenDialog和SaveDialog两个控件的初始情况如下:

OpenDialog的初始情况:

OpenDialog.Filter:='Gamma System file(*.ini)|*.ini|All files(*.*)|*.*' ;
OpenDialog.FilterIndex:=1;
OpenDialog.InitialDir:=Tmp_Path; // Tmp_Path 是上次保存文件时的路径
OpenDialog.Title:='Open Gamma Info';

SaveDialog的初始情况:

SaveDialog.Filter:='Gamma System File(*.ini)|*.ini|All files(*.*)|*.*' ;
SaveDialog.FilterIndex:=1;
SaveDialog.InitialDir:=Tmp_Path;
SaveDialog.FileName:=Tmp_FileName;
SaveDialog.Title:='Save Gamma Info';

两个相差就是一个Filename属性没有赋值的区别,但是在OpenDialog的初始情况中增加

OpenDialog.Filename:=''; 这一句,就一切都正常了。

原文地址:https://www.cnblogs.com/angelbd/p/3373053.html