vb-listbox用法

文章浏览阅读2.1w次,点赞3次,收藏8次。列表框(ListBox)控件表示一个选项清单,用户可能用鼠标选择其中一个或者几个选项。  列表框的特点是:列表框中的项目是通过程序插入到其中的,用户无法向清单中输入数据,当选择其中的项目,并在用户

列表框(ListBox)控件表示一个选项清单,用户可能用鼠标选择其中一个或者几个选项。

  列表框的特点是:列表框中的项目是通过程序插入到其中的,用户无法向清单中输入数据,当选择其中的项目,并在用户单击一个按钮或者执行某个操作时,由应用程序完成对指定项目的具体操作。下面这个例子充分说明了列表框的这个特点,并介绍了列表框(ListBox)的常用属性。

  为了学习方便,提供的源码已经作了详细的中文注释,看看源码框中的代码:

Option Explicit

‘————————————–

‘ 简单的列表框ListBox的例子

‘————————————–

‘ 洪恩在线 求知无限

‘————————————–

‘——名称————-作用————

‘ List1、List2 列表框

‘ LefttoRightCmd 移动所选项目到另一个列表框(左到右)

‘ RighttoLeftCmd 移动所选项目到另一个列表框(右到左)

‘ List1MoveCmd 删除列表框List1中所选项目

‘ List2MoveCmd 删除列表框List2中所选项目

‘ List1AddCmd 给列表框List1增加新项目

‘ List2AddCmd 给列表框List2增加新项目

‘ List1ClearCmd 清空列表框List1

‘ List2ClearCmd 清空列表框List2

‘————————————–

‘————————————–

‘————名称————属性设置———



‘ List1列表框 Sorted属性设为“False”

‘ List2列表框 Sorted属性设为“True”

‘ MultiSelect属性设置为2

‘ 即List2控件中的项目总是排序的

‘————————————–

Private Sub Form_Load()

‘装载窗体时,给列表中的元素赋值

List1.AddItem “China”

List1.AddItem “America”

List1.AddItem “Japan”

List2.AddItem “Soccer”

List2.AddItem “Tennis”

List2.AddItem “Basketball”

End Sub

Private Sub LefttoRightCmd_Click()

‘将左边列表中所选元素移动到右边列表中

If List1.ListIndex >= 0 Then

‘在右边列表中增加新元素

List2.AddItem List1.Text

‘删除左边列表中的所选元素

List1.RemoveItem List1.ListIndex

End If

End Sub

Private Sub List1AddCmd_Click()

Dim ListItem As String



ListItem = InputBox(“在列表中输入新项目”)

‘向列表中加入新项目

If Trim(ListItem) <> “” Then

‘Trim()作用是清除ListItem字符串内的空格

List1.AddItem ListItem

End If

End Sub

Private Sub List1ClearCmd_Click()

‘清空列表

List1.Clear

End Sub

Private Sub List1MoveCmd_Click()

Dim i As Integer

‘判断列表框是否只有一个项目被选中

If List1.SelCount = 1 Then

List1.RemoveItem List1.ListIndex

ElseIf List1.ListCount > 1 Then

‘删除列表框中的所选中的多个项目

For i = List1.ListCount – 1 To 0 Step -1

‘ListCount返回列表框中的项目总数

‘ListCount-1是列表框中最后一个项目的索引号

‘判断该项目是否被选中,Selected()返回布尔值

If List1.Selected(i) Then

‘删除索引号为i的项目

List1.RemoveItem i

End If

Next

End If

End Sub

Private Sub List2AddCmd_Click()

‘定义变量,以接收输入的字符串

Dim ListItem As String

ListItem = InputBox(“在列表中输入新项目”)

If Trim(ListItem) <> “” Then

‘将字符串增加到列表中

List2.AddItem ListItem

End If

End Sub

Private Sub List2ClearCmd_Click()

‘清空列表

List2.Clear

End Sub

Private Sub List2MoveCmd_Click()

Dim i As Integer

‘判断所选 元素是否只有一个

If List2.SelCount = 1 Then

List2.RemoveItem List2.ListIndex

‘如果所选 元素大于1,则按下列操作进行

ElseIf List2.ListCount > 1 Then

For i = List2.ListCount – 1 To 0 Step -1

If List2.Selected(i) Then

List2.RemoveItem i

End If

Next i

End If

End Sub

Private Sub RighttoLeftCmd_Click()

Dim i As Integer

‘判断选中的元素有几个

If List2.SelCount = 1 Then

List1.AddItem List2.Text

List2.RemoveItem List2.ListIndex

‘当选中的元素大于一个时

ElseIf List2.SelCount > 1 Then

For i = List2.ListCount – 1 To 0 Step -1

‘如果该元素被选中,则将其从右边移至左边

If List2.Selected(i) Then

List1.AddItem List2.List(i)

List2.RemoveItem i

End If

Next i

End If

End Sub

(源程序下载)

这个例子包含一个窗体,窗体中有两个列表框(List1、List2)和八个按钮,界面如下:

窗体(FormListBox)

我们首先新建一个标准的EXE工程,添加一个窗体,并把列表框和按钮控件添加到窗体上。各按钮控件的名称如下表:

按钮名称

名称属性

按钮名称

名称属性

删除所选项目(左)

List1movecmd

删除所选项目(右)

List2movecmd

增加新项目(左)

List1addcmd

增加新项目(右)

List2addcmd

清除弄表(左)

List1clearcmd

清除列表(右)

List2clearcmd

右箭头 lefttorightcmd 左箭头 Righttoleftcmd

‘ List1列表框 Sorted属性设为“False” ‘ List2列表框 Sorted属性设为“True” ‘ MultiSelect属性设置为2 ‘ 即List2控件中的项目总是排序的

  在属性窗口中,将List1列表框 Sorted属性设为“False”;List2列表框 Sorted属性设为“True”,MultiSelect属性设置为2,即List2控件中的项目总是排序的。

  下一步我们为各控件添加相应的程序。

  其中:

  List1.AddItem “China” 是将“China”添加到列表框中。

  List1.ListIndex 返回的是列表框List1中当前选择项目的索引号码。

  List1.ListCount 返回的是列表框List1中项目总数。

  List1.ListCount – 1 返回列表框List1中最后一个项目的索引号。

  List1.Selected() 返回的是一个项目的选择状态,返回的是布尔值。

  代码写好之后,我们就可以保存工程,然后按“Ctrl+F5”键,测试检验一下我们的程序了。在这个小程序中,包含了列表框中的一般常用属性和方法。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/76554.html

(0)
编程小号编程小号

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注