上一节的程序,一次只能移动一个表项。
2、前后两种程序的区别:
上一节的程序中,对单个表项进行移动,首先加入了是否选中的判断,然后再进行移动;全部移动,首先对目标框清零,再进行移动。它们虽然比较好理解,但程序的有效性却不佳。
本节的程序,对单个与全部表项进行移动,都采用循环法,可以一次移动多个表项。
3、程序代码:
(1)、窗体的载入事件(Form_Load)跟上一节一样:
Private Sub Form_Load()
LstLeft.AddItem "刘德华"
LstLeft.AddItem "张学友"
LstLeft.AddItem "郭富城"
LstLeft.AddItem "黎 明"
LstLeft.AddItem "谭咏麟"
LstLeft.AddItem "梅艳芳"
LstLeft.AddItem "张曼玉"
End Sub
(2)、向右按钮的点击事件(CmdRight):
Private Sub CmdRight_Click()
Dim X As Integer
While LstLeft.SelCount > 0
For X = 0 to LstLeft.LstCount - 1
If LstLeft.Selected(X) = True Then
LstRight.AddItem LstLeft.List(X)
LstLeft.RemoveItem X
Exit For
End If
Next X
Wend
End Sub
(3)、全部向右按钮的点击事件(CmdAllRight)
Private Sub CmdAllRight_Click()
Dim X As Integer
For X = 0 to LstLeft.ListCount - 1
LstRight.AddItem LstLeft.List(X)
Next X
LstLeft.Clear
End Sub
(4)、以此类推,输入向左按钮(CmdLeft)与全部向左按钮(CmdAllLeft)的点击事件,最后按 F5 键运行程序。