Enum FOLDERVIEWMODE
    FVM_ICON = 1
    FVM_SMALLICON = 2
    FVM_LIST = 3
    FVM_DETAILS = 4
    FVM_THUMBNAIL = 5
    FVM_TILE = 6
    FVM_THUMBSTRIP = 7
End Enum' 参照 Microsoft Internet Controls
'      Microsoft Shell Controls And Automation
Sub OpenExplorer(path As String, ByVal viewMode As FOLDERVIEWMODE)
    Dim objExplorer     As SHDocVw.ShellBrowserWindow
    Dim objFolderView   As Object 'Shell32.ShellFolderView    Set objExplorer = New SHDocVw.ShellBrowserWindow
    
    objExplorer.navigate path
    objExplorer.Visible = True
    Set objFolderView = objExplorer.document
    objFolderView.CurrentViewMode = viewMode
End Sub
---------------------------------------------------
我想把某文件夹里的文件排列起来,,,,排列方式是按备注排列,并且按组排列。
如何用VB来实现?我知道可以手动,可是我想做一个全自动的软件来实现这一功能。。
已经翻了很多API函数了。可是本人太菜。。不知道怎么实现。。
上面是我以前问的问题,再上面是别人给我的答案,可是我看不懂。。特别是那两个控件,我只找到英文说明,我看英文太吃力了,根本看不懂。谁可以帮下忙,解说一下。。

解决方案 »

  1.   

    是浏览器的一段代码
    Sub OpenExplorer(path As String, ByVal viewMode As FOLDERVIEWMODE)    一个子过程
    这是一个子函数, 调用这个函数将会打开一个地址,
    例如:    OpenExplorer("C:\",0)下面是过程:
        Dim objExplorer     As SHDocVw.ShellBrowserWindow  定义一个基于shell的浏览窗口
        Dim objFolderView   As Object 'Shell32.ShellFolderView   定义一个目录    Set objExplorer = New SHDocVw.ShellBrowserWindow     设置这个新浏览窗口
        
        objExplorer.navigate path                            让这个窗口打开你传递给过程的路径 C:\
        objExplorer.Visible = True                           显示这个窗体(也就是打开给你看了)
        Set objFolderView = objExplorer.document             设置查看状态为文档状态
        objFolderView.CurrentViewMode = viewMode             设置查看模式
    End Sub                                                  结束过程由此而看这个过程是用于帮助你打开一个新的网页或者是一个目录用的.
      

  2.   

    更正一下:
    没仔细看你上面定义的
    例如:    OpenExplorer("C:\",0)
    这里的 0 也就是Viewmode参数应该是你定义上面的显示状态参数中的某一个
    例如你要显示图标
    就应该是:OpenExplorer("C:\123.ICO",1)
    '这是你上面定义的
    Enum FOLDERVIEWMODE
        FVM_ICON = 1
        FVM_SMALLICON = 2
        FVM_LIST = 3
        FVM_DETAILS = 4
        FVM_THUMBNAIL = 5
        FVM_TILE = 6
        FVM_THUMBSTRIP = 7
    End Enum