如果实现同一个窗口上两个ListView之间拖动多个项目时,
显示多个拖动图标,图标的样式像Window资源管理器那样的。※图标的样式像Window资源管理器那样的。
※图标的样式像Window资源管理器那样的。

解决方案 »

  1.   

    http://www.vbgood.com/vb.good/article-do-view-articleid-2883.html 请在上面地址中查找,有这个的解决办法.
      

  2.   


    '经过再次研究,以下代码可以将listView1中的拖放至ListView2中
    '以下代码在窗体中.
    '要建立两个Listview 分别为Listview1 listview2 再建立一个ImageList1 里面最少有一张图片,
    '并将两个Listview 均与ImageList1 绑定,并且设置为普通图标.  Dim List1 As ListItem
     
          Private Sub Form_Load()
      Dim i     As Integer  ListView1.ListItems.Add , , "cc", 1
      ListView1.ListItems.Add , , "dd", 1
        
      ListView1.OLEDragMode = ccOLEDragAutomatic
      ListView1.LabelEdit = lvwManual
      ListView1.HideSelection = False
      End Sub  Private Sub ListView1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
        If Button = vbLeftButton Then
            ListView1.DragIcon = ListView1.SelectedItem.CreateDragImage
            ListView1.Drag vbBeginDrag
            Set List1 = ListView1.SelectedItem
        End If
      End Sub
        
      Private Sub ListView2_DragDrop(Source As Control, x As Single, y As Single)
      If Source Is ListView1 Then
        Dim list2 As ListItem
        Dim Count As Long
        
        
        Set list2 = ListView2.ListItems.Add(, , List1.Text)
        If Not IsNull(List1.Icon) Then
           list2.Icon = List1.Icon
        End If
        
        If Not IsNull(List1.SmallIcon) Then
           list2.SmallIcon = List1.SmallIcon
        End If
        
        
        
        If ListView1.ColumnHeaders.Count < ListView2.ColumnHeaders.Count Then
          Count = ListView1.ColumnHeaders.Count
        Else
          Count = ListView2.ColumnHeaders.Count
        End If
        
        For i = 2 To Count
           list2.SubItems(i - 1) = List1.SubItems(i - 1)
        Next     
      End If
    End Sub
    '以上代码调试通过.