listview上下移动数据
各位朋友请问使用vb6 的listview控件显示从数据库中查询后的数据,如果希望把显示的数据的顺序进行上下位置的调换是否可以做到?比如把显示的最后一条记录,调换到最上面,然后原来的第一条记录就变成了第二条了!
谢谢各位了
Private Sub Command1_Click(Index As Integer) '移动选中条目位置,使用控件数组 '0:第一条;1:向上一条;2:向下一条;3:最后一条 Dim vl1 As ListItem '原始 Dim vl2 As ListItem '新的 Dim i As Long Set vl1 = ListView1.SelectedItem '当前已选择的 Select Case Index Case 0 '到最顶端 Set vl2 = ListView1.ListItems.Add(1) '添加在最顶端 Case 1 If vl1.Index > 1 Then '是否到顶 Set vl2 = ListView1.ListItems.Add(vl1.Index - 1) '添加在上一条 Else Exit Sub End If Case 2 If vl1.Index < ListView1.ListItems.Count Then '是否到底 Set vl2 = ListView1.ListItems.Add(vl1.Index + 2) '添加在下二条 Else Exit Sub End If Case 3 Set vl2 = ListView1.ListItems.Add '添加在最后 Case Else '其它按钮,统统忽略 Exit Sub End Select vl2.Text = vl1.Text '第一列的文本 vl2.Icon = vl1.Icon 'ICO属性 vl2.SmallIcon = vl1.SmallIcon For i = 1 To ListView1.ColumnHeaders.Count - 1 '总数据个数 vl2.SubItems(i) = vl1.SubItems(i) '复制内容 Next i ListView1.ListItems.Remove (vl1.Index) '删原数据 Set ListView1.SelectedItem = vl2 '选中它 Set vl1 = Nothing Set vl2 = Nothing End Sub