VC中实现还差不多,VB我就不知道如何作。

解决方案 »

  1.   

    最笨的方法用个timer不就行了……
      

  2.   

    这个基本上很简单!不过代码很长的!就是对列表中项目重新排序而且还要用api具体我也不知道
      

  3.   

    呵~~~~~,用VB中基本的OLE拖放功能.你好好看看书吧!
      

  4.   

    '用ListView多简单啊!
    '加1个ListView
    Private Sub Form_Load()
        Dim i As Integer
        With ListView1
             .ColumnHeaders.Add , , "项目"
             .ColumnHeaders(1).Width = .Width - 650
             .DragMode = 0
             .View = lvwReport
             For i = 1 To 50
                 .ListItems.Add , "No." & i, i & ".项目发生变化。"
             Next
        End With
    End SubPrivate Sub ListView1_DragDrop(Source As Control, x As Single, y As Single)
        Dim tmpStr As String
        With ListView1
            If .DropHighlight Is Nothing Then Exit Sub
            tmpStr = .DropHighlight.Text
            .DropHighlight.Text = .SelectedItem.Text
            .SelectedItem.Text = tmpStr
            Set ListView1.DropHighlight = Nothing
        End With
    End SubPrivate Sub ListView1_DragOver(Source As Control, x As Single, y As Single, State As Integer)
         ListView1.DropHighlight = ListView1.HitTest(x, y)
    End SubPrivate Sub ListView1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
        If Button <> 1 Then Exit Sub
        ListView1.SelectedItem.CreateDragImage
        ListView1.Drag vbBeginDrag
    End Sub