Foxtable(狐表)用户栏目专家坐堂 → FolderBrowserDialog 如何实现打开时直接打开它上次打开的目录呢?


  共有20264人关注过本帖树形打印复制链接

主题:FolderBrowserDialog 如何实现打开时直接打开它上次打开的目录呢?

帅哥哟,离线,有人找我吗?
xghua
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:100 威望:0 精华:0 注册:2012/8/14 10:32:00
FolderBrowserDialog 如何实现打开时直接打开它上次打开的目录呢?  发帖心情 Post By:2012/8/14 10:38:00 [显示全部帖子]

FolderBrowserDialog

  • RootFolder

    开始浏览的根目录。
       
  • SelectedPath

    用户选定的目录。
       

Dim dlg As New FolderBrowserDialog

 

dlg.RootFolder="c:\"---------------------这个属性为甚麽不能用呢?请问专家如何实现打开时直接打开它上次打开的目录呢?


If
dlg.ShowDialog = DialogResult.Ok Then
    MessageBox.Show(
"你选择的目录是:" & dlg.SelectedPath,"提示")
End
If

 

<!--StartFragment -->

 回到顶部
帅哥哟,离线,有人找我吗?
xghua
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:100 威望:0 精华:0 注册:2012/8/14 10:32:00
  发帖心情 Post By:2012/8/14 10:43:00 [显示全部帖子]

请问专家如何实现打开时直接打开它上次打开的目录呢? 我是这样写的,但是好像 RootFolder属性说 
类型不对
                

 

Dim dlg As New FolderBrowserDialog
                      
                    If dlg.ShowDialog = DialogResult.Ok Then
                            SourcePath=dlg.SelectedPath+"\丰润区"+ danwei+"幼儿园规划谱表.mdb"
                            CompactToAccess( SourcePath , "") '导出数据,密码为空
                           
                            dlg.RootFolder=dlg.SelectedPath '将选定的目录设为默认,便于下次使用

                      End If
                     MessageBox.Show("数据导出路径如下:"+SourcePath,"全部数据导出成功!!")


 回到顶部
帅哥哟,离线,有人找我吗?
xghua
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:100 威望:0 精华:0 注册:2012/8/14 10:32:00
  发帖心情 Post By:2012/8/14 14:27:00 [显示全部帖子]

谢谢,看明白了。就是在全局代码或全局变量中加入这一句 Public dlg As new FolderBrowserDialog

然后再按钮单击事件中再执行代码

                              'Dim dlg As New FolderBrowserDialog  这个声明就不能用了
                      
                    If dlg.ShowDialog = DialogResult.Ok Then
                            SourcePath=dlg.SelectedPath+"\丰润区"+ danwei+"幼儿园规划谱表.mdb"
                            CompactToAccess( SourcePath , "") '导出数据,密码为空
                           
                            dlg.RootFolder=dlg.SelectedPath '将选定的目录设为默认,便于下次使用

                      End If
                     MessageBox.Show("数据导出路径如下:"+SourcePath,"全部数据导出成功!!")


 


 回到顶部
帅哥哟,离线,有人找我吗?
xghua
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:100 威望:0 精华:0 注册:2012/8/14 10:32:00
  发帖心情 Post By:2012/8/14 14:27:00 [显示全部帖子]

我测试后发现如果关闭以后下次还是要重新选路径,如何保证关闭以后这个记录的目录不丢呢?

 回到顶部
帅哥哟,离线,有人找我吗?
xghua
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:100 威望:0 精华:0 注册:2012/8/14 10:32:00
  发帖心情 Post By:2012/8/14 14:28:00 [显示全部帖子]

对了   ,‘ dlg.RootFolder=dlg.SelectedPath   这行也要注视掉

 回到顶部
帅哥哟,离线,有人找我吗?
xghua
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:100 威望:0 精华:0 注册:2012/8/14 10:32:00
  发帖心情 Post By:2012/8/14 14:34:00 [显示全部帖子]

问题是关闭程序冲新打开后,原来选定的目录还是没能保存住,如何解决呢?

 回到顶部
帅哥哟,离线,有人找我吗?
xghua
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:7 积分:100 威望:0 精华:0 注册:2012/8/14 10:32:00
  发帖心情 Post By:2012/8/14 15:43:00 [显示全部帖子]

看明白了,就是将第一次获取的路径保存在配置信息里

 

SaveConfigValue("File", dlg.SelectedPath)

下次再用

 

dlg.SelectedPath = GetConfigValue("File","")调用

 

,这样的话,全局代码里面的 

 

public dlg As New FolderBrowserDialog

 

就没有用了吧?


Dim dlg As New FolderBrowserDialog
dlg.SelectedPath = GetConfigValue("File","")
If dlg.ShowDialog = DialogResult.Ok Then
    MessageBox.Show("你选择的目录是:" & dlg.SelectedPath,"提示")
    SaveConfigValue("File", dlg.SelectedPath)
End If


 回到顶部