如题,我用的是Microsoft Common Dialog Control 6.0控件,把它的Flags属性设置为512后变成如下图
的形式了,可以选取多个文件,但是界面变的不方便了.
我想在这种状态下实现可以选取多个文件,该如何做呀.
还请各位多多指教,谢谢...

解决方案 »

  1.   

    Microsoft Common Dialog Control 6.0控件 有很多个控件 不知道你说的是哪个?
      

  2.   

    你上面那图是无cdlOFNExplorer的,下面是有cdlOFNExplorer的.
    没cdlOFNExplorer的,可用点击加上"ctrl+点击"或"shift+点击"多选啊,有cdlOFNExplorer的队除此之外,还可以用鼠标拖拉虚线框框选啊
      

  3.   

    也就是这个啊    '允许多重选择
        CommonDialog1.Flags = cdlOFNAllowMultiselect Or cdlOFNExplorer前面我好像是在你的问题中,提到过用cdlOFNExplorer设置"支持长文件名"的风格的哦
      

  4.   

    你看我在你这个帖的5楼里已说了的啊,你还给了我5分呢^-^http://topic.csdn.net/u/20100304/22/919fc4c3-0eb2-4279-829c-70348810c5a5.html
    Commondialog控件,请大家帮帮忙,,谢谢...
      

  5.   

    CommonDialog 复选 的概念:1.取消的话 一样返回32755 但如加上 CommonDialog1.CancelError = False所以并不需加On Error Goto, 但如果.CancelError = True, 则你必需加上On Error Goto的除错副程序.2.CommonDialog的复选, 重点是要加上下面这行
    .Flags = cdlOFNAllowMultiselect Or cdlOFNExplorer3.在选择完毕时, 取消返回 -1 的文件数, 选择一个文件时返回 0, 并带完全路径的文件名称, 选2个或以上时,最少返回 2, 并且得到的CommonDialog1.Filename是以Chr(0) 分隔的字符串, 你用Msgbox看的话,也只能看到最前面的 "文件夹路径", 你必需使用Split涵数来分割Chr(0)4.CommonDialog的复选返回与一般的单选返回完全两码事, 将返回的文字串以Chr(0)分割后, 第一个数组是路径, 第二个之后才是单独的每一个选中的文件名称.'接下来 看代码:
    '*************************************************************Option Explicit '强制宣告定义变量
    Dim SelectFile$, i%, S '定义变量
    Private Sub Form_Load()
       Me.AutoRedraw = True
       Me.Width = 6000
       Me.Move (Screen.Width - Me.Width) \ 2, (Screen.Height - Me.Height) \ 2
    End SubPrivate Sub Command1_Click()
       On Error GoTo ErrH
       With CommonDialog1
          .DialogTitle = "请选择文件"
          .CancelError = True
          .Filter = "图片格式(*.bmp;*.jpg;*.gif;*.png;*.ico)|*.bmp;*.jpg;*.gif;*.png;*.ico|位图格式(*.bmp)|*.bmp|GIF格式(*.gif)|*.gif|JPEG格式(*.jpg)|*.jpg|PNG格式(*.png)|*.png"
          .Flags = cdlOFNAllowMultiselect Or cdlOFNExplorer '复选文件必加
          .ShowOpen
       End With
       SelectFile = CommonDialog1.FileName
       S = Split(SelectFile, Chr(0))
       '*******************************************************************************
       Me.Cls
       Me.Print "您选择了下面的文件"
       If UBound(S) = 0 Then
          Me.Print S(0)
       Else
          If Right(S(0), 1) <> "\" Then S(0) = S(0) & "\"
          For i = 1 To UBound(S)
             Me.Print S(0) & S(i)
          Next i
       End If
    ErrH:
       If Err = 32755 Then Exit Sub
    End Sub
      

  6.   

    cbm666高见!
    总是代码解决问题,实在人!!