用VB做列表框的应用技巧
- 格式:doc
- 大小:75.50 KB
- 文档页数:6
用VB做列表框的应用技巧
一、程序设计界面:
用VB做一个列表框向另外的列表框中添加选项并不是一件复杂的事情,在此向各位初学者(包括自己在内)介绍一下如何用列表框的属性和事件来实现这个功能。
新建一个标准EXE工程,在屏幕上会出现一个空白的窗体,向窗体上添加两个ListBox控件、二个Frame控件、四个CommandButton控件和二个OptionButton控件,添加控件后的窗体如图1所示。
图1
二、控件属性及设置列表:
图2
提示:MultiSelect设置为“2-Extended”,就可实现用Ctrl键和Shift键来选择列表中的内容。
三、程序的代码分别如下:
1.开始执行程序时,调用程序声明段中的代码:
Dim flag(100) As Boolean, ff As Boolean
Dim i, g As Integer
2.双击控件Command1,在代码窗口中的光标就会自动的跳转到控件Command1的Command1_Click()事件处,在该事件中添加下列代码:Private Sub Command1_Click() '添加…>>
If ff = True Then
For i = 0 To List1.ListCount - 1
If flag(i) = 0 And List1.Selected(i) Then '判断选项的选中状态
List2.AddItem List1.List(i) '向控件list2添加选项
flag(i) = 1
Call mun '调用统计列表个数
End If
Next i
End If
If ff = False Then
For i = List1.ListCount - 1 To 0 Step -1
If List1.Selected(i) Then '判断选项的选中状态
List2.AddItem List1.List(i) '向控件list2添加内容
List1.RemoveItem (i)
Call mun '调用统计列表个数
End If
Next i
End If
End Sub
3.双击Command2控件,并输入如下代码:
Private Sub Command2_Click() '全部添加
If ff = True Then
For i = 0 To List1.ListCount - 1
If flag(i) = 0 Then
List2.AddItem List1.List(i) '将已选项追加到list2中
flag(i) = 1
Call mun
End If
Next i
End If
If ff = False Then
For i = List1.ListCount - 1 To 0 Step -1
List2.AddItem List1.List(i) '将已选项追加到list2中
List1.RemoveItem (i) '删除已选项
Call mun
Next i
End If
End Sub
4.双击Command3控件,并输入如下代码:
Private Sub Command3_Click() '全部删除
If ff = True Then
For i = 0 To List2.ListCount - 1
flag(i) = 0
Call mun
Next i
List2.Clear
End If
If ff = False Then
For i = List2.ListCount - 1 To 0 Step -1
List1.AddItem List2.List(i)
List2.RemoveItem (i)
Call mun
Next i
End If
End Sub
5.双击Command4控件,并输入如下代码:
Private Sub Command4_Click() '删除<<…
If ff = True Then
For i = List2.ListCount - 1 To 0 Step -1
If List2.Selected(i) Then '判断选项的选中状态For q = 0 To List1.ListCount - 1
If List2.List(i) = List1.List(q) Then
flag(q) = 0 '如与原数据相同则置为可选
End If
Next q
List2.RemoveItem (i) '删除所选项
Call mun
End If
Next i
End If
If ff = False Then
For i = List2.ListCount - 1 To 0 Step -1
If List2.Selected(i) Then
List1.AddItem List2.List(i)
List2.RemoveItem (i)
Call mun
End If
Next i
End If
End Sub
6.双击Form1窗体,并输入窗体的初始化代码:
Private Sub Form_Load()
ff = True
Call Init
Call mun '调用统计列表个数的函数
Frame1.Caption="功能转换"
Frame2.Caption = ""
Option1(0).ToolTipText = "实现只向List2控件添加内容并不删除原内容"
Option1(1).ToolTipText = "实现向List2控件添加内容并将其原内容删除"
Me.Icon = LoadPicture("") '标题栏没图标显示
Me.Caption = "列表框应用技巧[威龙工作室]"
End Sub
7.选择Form1的“Unload”并输入下列代码:
Private Sub Form_Unload(Cancel As Integer)
Unload Me '结束程序
End Sub
8.选择List1控件的“DblClick”并输入下列代码:
Private Sub List1_DblClick()
Command1_Click '实现双击添加
End Sub
9.选择List2控件的“DblClick”并输入下列代码:
Private Sub List2_DblClick()
Command4_Click '实现双击删除
End Sub
提示:各位在执行某个程序时,想执行某个程序的代码,可以如上述第8和第9段代码一样就可以执行添加按钮和删除按钮相同的工作了。
10.双击Option1控件,并输入下列代码来实现功能转换:
Private Sub Option1_Click(Index As Integer)
Select Case Index
Case 0
ff = True