vb listbox 如何调整行顺序
当lisibox控件显示出来很多行之后,如何对它们的顺序做修改,可以加两个按钮来控制被选中的项进行上移和下移,这个代码怎么写?谢谢,可以搞定.有个小漏洞,如果在lisib...
当lisibox控件显示出来很多行之后,如何对它们的顺序做修改,可以加两个按钮来控制被选中的项进行上移和下移,这个代码怎么写?
谢谢,可以搞定.有个小漏洞,如果在lisibox里没有选中行,直接点上移下移的话会出错,怎么办 展开
谢谢,可以搞定.有个小漏洞,如果在lisibox里没有选中行,直接点上移下移的话会出错,怎么办 展开
展开全部
Private Sub Command1_Click() '上移
Dim N As Long
N = List1.ListIndex '记录当前序号
if n=-1 then exit sub '加这句,判断是否选择
If N - 1 > -1 Then '判断是否最前
List1.AddItem List1.Text, N - 1 '在当前项的上一条记录前插入一条记录
List1.RemoveItem N + 1 '删除原记录
List1.Selected(N - 1) = True '选中移动后记录
Else
MsgBox "已经是最前"
End If
End Sub
Private Sub Command2_Click() '下移
Dim N As Long
N = List1.ListIndex
If N + 1 < List1.ListCount Then
List1.AddItem List1.Text, N + 2
List1.RemoveItem N
List1.Selected(N + 1) = True
Else
MsgBox "已经是最后"
End If
End Sub
Dim N As Long
N = List1.ListIndex '记录当前序号
if n=-1 then exit sub '加这句,判断是否选择
If N - 1 > -1 Then '判断是否最前
List1.AddItem List1.Text, N - 1 '在当前项的上一条记录前插入一条记录
List1.RemoveItem N + 1 '删除原记录
List1.Selected(N - 1) = True '选中移动后记录
Else
MsgBox "已经是最前"
End If
End Sub
Private Sub Command2_Click() '下移
Dim N As Long
N = List1.ListIndex
If N + 1 < List1.ListCount Then
List1.AddItem List1.Text, N + 2
List1.RemoveItem N
List1.Selected(N + 1) = True
Else
MsgBox "已经是最后"
End If
End Sub
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询