📄 listbox_frm.frm
字号:
VERSION 5.00
Begin VB.Form Form1
Caption = "ListBox"
ClientHeight = 3840
ClientLeft = 60
ClientTop = 345
ClientWidth = 4680
LinkTopic = "Form1"
ScaleHeight = 3840
ScaleWidth = 4680
StartUpPosition = 3 '窗口缺省
Begin VB.CommandButton ClearCmd
Caption = "源清除项"
Height = 375
Left = 3480
TabIndex = 10
Top = 3360
Width = 1095
End
Begin VB.CommandButton RemoveICmd
Caption = "源移除项"
Height = 375
Left = 1800
TabIndex = 9
Top = 3360
Width = 1095
End
Begin VB.CommandButton AddICmd
Caption = "源添加项"
Height = 375
Left = 120
TabIndex = 8
Top = 3360
Width = 1095
End
Begin VB.CommandButton LAll_Btn
Caption = "<<"
Height = 375
Left = 1920
TabIndex = 5
Top = 2640
Width = 855
End
Begin VB.CommandButton LOne_Btn
Caption = "<"
Height = 375
Left = 1920
TabIndex = 4
Top = 2040
Width = 855
End
Begin VB.CommandButton RAll_Btn
Caption = ">>"
Height = 375
Left = 1920
TabIndex = 3
Top = 1440
Width = 855
End
Begin VB.CommandButton ROne_Btn
Caption = ">"
Height = 375
Left = 1920
TabIndex = 2
Top = 840
Width = 855
End
Begin VB.ListBox ListR
Height = 2790
Left = 2880
Sorted = -1 'True
Style = 1 'Checkbox
TabIndex = 1
Top = 360
Width = 1695
End
Begin VB.ListBox ListL
Height = 2940
Left = 120
TabIndex = 0
Top = 360
Width = 1695
End
Begin VB.Label Label2
Caption = "目标列表"
Height = 375
Left = 2880
TabIndex = 7
Top = 0
Width = 1575
End
Begin VB.Label Label1
Caption = "源列表"
Height = 375
Left = 120
TabIndex = 6
Top = 0
Width = 1575
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private Sub Form_Load()
Dim i As Integer
For i = 1 To 12
ListL.AddItem "List Item " & i
Next i
SetButtonsState ' 设置按钮初始状态
End Sub
' 将左侧列表框中的指定项目移动到右侧
Private Sub ROne_Btn_Click()
MoveOneItem ListL, ListR
SetButtonsState
End Sub
' 将左侧列表框中的所有项目移动到右侧
Private Sub RAll_Btn_Click()
MoveAllItem ListL, ListR
SetButtonsState
End Sub
' 将右侧列表框中的指定项目移动到左侧
Private Sub LOne_Btn_Click()
MoveOneItem ListR, ListL
SetButtonsState
End Sub
' 将右侧列表框中的所有项目移动到左侧
Private Sub LAll_Btn_Click()
MoveAllItem ListR, ListL
SetButtonsState
End Sub
' 从列表框控件删除一条记录
Private Sub ListDelItem(ListCtrl As ListBox, ByVal delIndex As Integer)
If ListCtrl.ListCount > 0 And delIndex >= 0 Then
ListCtrl.RemoveItem delIndex
If ListCtrl.ListCount > 0 Then
If ListCtrl.ListCount <= delIndex Then
ListCtrl.ListIndex = delIndex - 1
Else
ListCtrl.ListIndex = delIndex
End If
End If
End If
End Sub
' 移动一条
Private Sub MoveOneItem(SrcList As ListBox, DesList As ListBox)
If SrcList.ListCount > 0 Then
If SrcList.ListIndex < 0 Then
SrcList.ListIndex = 0
End If
DesList.AddItem SrcList.List(SrcList.ListIndex)
DesList.ItemData(DesList.NewIndex) = SrcList.ItemData(SrcList.ListIndex)
ListDelItem SrcList, SrcList.ListIndex
End If
End Sub
' 全体移动
Private Sub MoveAllItem(SrcList As ListBox, DesList As ListBox)
Dim i As Integer
i = 0
Do While i < SrcList.ListCount
DesList.AddItem SrcList.List(i)
DesList.ItemData(DesList.NewIndex) = SrcList.ItemData(i)
i = i + 1
Loop
SrcList.Clear
End Sub
' 向源列表框中添加新项目
Private Sub AddICmd_Click()
ListL.AddItem "List Item new"
End Sub
' 从源列表框中移除项目
Private Sub RemoveICmd_Click()
If ListL.ListIndex <> -1 Then
ListL.RemoveItem ListL.ListIndex
End If
End Sub
' 清空源列表框中项目
Private Sub ClearCmd_Click()
ListL.Clear
End Sub
' 设置按钮控件是否可用
Private Sub SetButtonsState()
If ListL.ListCount > 0 Then
ROne_Btn.Enabled = True
RAll_Btn.Enabled = True
Else
ROne_Btn.Enabled = False
RAll_Btn.Enabled = False
End If
If ListR.ListCount > 0 Then
LOne_Btn.Enabled = True
LAll_Btn.Enabled = True
Else
LOne_Btn.Enabled = False
LAll_Btn.Enabled = False
End If
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -