第五章 列表框与组合框
RemoveItem方法 RemoveItem方法——删除指定列表项 方法——删除指定列表项
格式: 格式: [列表框名 列表框名].RemoveItem 删除项序号 列表框名 例如:List1. RemoveItem 0 例如:
Clear方法 Clear方法——删除列表框中的所有项。 方法——删除列表框中的所有项 删除列表框中的所有项。
List
格式是: 格式是:
[<对象名 对象名>.].List (<索引值 [=<字符串表达式 索引值>) 字符串表达式>] 对象名 索引值 字符串表达式
插入” 如:List1 . List(5)=“插入” 插入
“List1”是控件的名称,而不 是控件的名称, 是控件的名称 是实际上列表清单中数据。 是实际上列表清单中数据。
+ ch1$
+ ch1$
+ ch1$
+ ch1$
二、组合框(ComboBox)控件 组合框(ComboBox)
组合框控件将文本框和列表框的特性结合在一起 组合框控件将文本框和列表框的特性结合在一起——既可 文本框 的特性结合在一起 以在控件的文本框部分输入信息,也可以在控件的列表框部 分选择一项。组合框的默认名为ComboX(X=1,2,…) 。 组合框有三种风格:
例题5.5 设计一个程序,查询飞往各城市的航班时间, 例题 设计一个程序,查询飞往各城市的航班时间,程序 运行后,用户从列表中选择一个城市,然后单击, 运行后,用户从列表中选择一个城市,然后单击,显示出航 班的起飞时间。 班的起飞时间。
Private Sub Form_Load() List1.AddItem "上海 上海" 上海 List1.AddItem "大连 大连" 大连 List1.AddItem "广州 广州" 广州 List1.AddItem "深圳" "深圳 深圳" End Sub
Style 属性—— 外观属性。 属性—— 外观属性。
组合框有三种外观: 组合框有三种外观: Style=0, Style=0,下拉式组合框(默认值) Style=1, Style=1, 简单组合框 Style=2, Style=2,下拉式列表框
方法
Additem RemoveItem Clear SetFocus Move 加入数据项 删除数据项 清除全部数据项 将焦点移动到控件上 改变控件在窗体上的位置
在每一项输入后, 在每一项输入后,必须以 “Ctrl+Enter”换行 换行
Text与ListIndex选取的数据 与 选取的数据
ListIndex等于“1” 等于“ 等于 ListIndex使list数组中 使 数组中 Text等于“第二项 ” 等于“ 等于 最后一个被选取得项目的 索引值。 索引值。
Private Sub List1_Click() ch$ = "北京 --" 北京 Select Case List1.ListIndex Case 0 ch1$ = "星期五 15:00 起飞 起飞" 星期五 Label3.Caption = ch$ + List1.Text Case 1 ch1$ = "星期一 09:00 起飞 起飞" 星期一 Label3.Caption = ch$ + List1.Text Case 2 ch1$ = "星期六 22:20 起飞 起飞" 星期六 Label3.Caption = ch$ + List1.Text Case 3 ch1$ = "星期五 23:30 起飞 起飞" 星期五 Label3.Caption = ch$ + List1.Text End Select
Columns 属性 决定列表框中显示条目的列数。 属性:决定列表框中显示条目的列数。 决定列表框中显示条目的列数 0----显示一列(默认),垂直滚动条。 显示一列(默认),垂直滚动条。 显示一列 ),垂直滚动条 1----显示一列,水平滚动条。 显示一列,水平滚动条。 显示一列 n----显示 n 列,水平滚动条。( 显示 水平滚动条。( 。(n>1) ) Columns=3 时,水平滚 动条。 动条。
第五章 列表框与组合框
一、列表框(ListBox) 控件 列表框(ListBox) 二、组合框(ComboBox)控件 组合框(ComboBox)
一、列表框(ListBox) 控件 列表框(ListBox)
列表框控件( 列表框控件 ( ListBox)用于显示项目列表 , 用户可从 ) 用于显示项目列表, 中选择一个或多个项目。 中选择一个或多个项目 。 如果项目总数超过了可显示的项 目数, 会自动加上滚动条。 目数, VB会自动加上滚动条。 会自动加上滚动条 列表框有两种风格:标准和复选列表框。通过它的 列表框有两种风格:标准和复选列表框。 Style属性来设置。 属性来设置。 属性来设置
列表框的方法与事件 AddItem 方法——向列表框中添加新条目 向列表框中添加新条目
格式: 格式: [列表框名 列表框名].AddItem 字符串表达式 [,插入位置序号 插入位置序号] 列表框名 插入位置序号 若不指定插入位置, 若不指定插入位置,且Sorted = False,则插入 , 到列表尾;否则插入到适当位置。 到列表尾;否则插入到适当位置。
Private Sub Command1_Click() If IsNumeric(Text1) Then n = Val(Text1) For i = 0 To List1.ListCount - 1 If Val(List1.List(i)) > n Then Exit For End If Next List1.AddItem Text1, i Text1 = "" End If End Sub 找出插入数据的适当 位置 '插入数据 插入数据 判断输入的是否为数 并赋值给n 值,并赋值给 ListCount属性 —— 属性 列表框中的条目数
下拉式组合框 简单组合框 下拉式列框表
一般属性
List Sorted BankColor Forcolor Font Enable Visible Tag ItemData Appearance 列表属性 排序选择 背景颜色 文字颜色 文字字体 可使用 可看见 程序中的附加数据 附加数据 立体外观
Selected属性是一个逻辑型数组(与List 和 属性是一个逻辑型数组( 属性是一个逻辑型数组 ItemData属性类似),其中的每个元素对应列表 属性类似) 属性类似 框中的一个选项的选择状态: 框中的一个选项的选择状态: Selected = True 时,对应项被选中; 对应项被选中; Selected = False 时,对应项没有选中。 对应项没有选中。 Selected属性的语法为: 属性的语法为: 属性的语法为 列表框名.Selected(<序号 [= <逻辑值 序号>) 逻辑值>] 列表框名 序号 逻辑值
触发单击命令按钮 事件。 事件。
Private Sub Command1_Click() If List1.Selected(i) Then List2.AddItem List1.List(i) List1.RemoveItem (i) End If Next End Sub
列表框中的条目数
For i = List1.ListCount - 1 To 0 Step -1
Private Sub Command1_Click() If Trim(Text1) <> “ ” Then ‘如果输入不是空字 如果输入不是空字 符串, 符串,就加入列表 List1.AddItem Trim(Text1) Text1 = "" End If End Sub
例题5.3 要求将列表框中插入的数值进行排序,把 要求将列表框中插入的数值进行排序, 例题 新加入的数据一一插入到适当的位置。 新加入的数据一一插入到适当的位置。
Change事件 只有在style为0 或1且文本框存在使可用。 Change事件 只有在 且文本框存在使可用。 为 且文本框存在使可用
当文本框的数据改变是将触发此事件。 当文本框的数据改变是将触发此事件。
例题5.6 程序如下程序,当选则不同的“省名称”时, 程序如下程序,当选则不同的“省名称” 例题 将可以看到不同邮政区号分区的选择。 将可以看到不同邮政区号分区的选择。
例如: 王平” 例如:List1.AddItem “王平” 王平
例题5.2 利用文本框及列表框, 例题 利用文本框及列表框,让用户一一输入板及学生 的姓名。在文本框输入完成后,通过设置按钮的Default 的姓名。在文本框输入完成后,通过设置按钮的 属性,使得按下就会输入的数据加入列表框。 属性,使得按下就会输入的数据加入列表框。
Text则是数组中对应的字 则是数组中对应的字 符串数据。 符串数据。
例题5.1 利用列表框让用户选择窗体的颜色。 例题
MultiSelect属性——设置是否能够选择多项。 属性 设置是否能够选择多项。 设置是否能够选择多项
MultiSelect = 0:不允许复选(缺省值) 。 0:不允许复选(缺省值) MultiSelect = 1:简单复选。鼠标单击或按下 1:简单复选。鼠标单击或 空格键,在列表中选中或取消选中项。 空格键,在列表中选中或取消选中项。使用箭头键 移动焦点。 移动焦点。 MultiSelect = 2:扩展复选。按下 SHIFT 并 2:扩展复选。 单击鼠标或按箭头键选择连续的多项 选择连续的多项。 单击鼠标或按箭头键选择连续的多项。按下 CTRL 选择不连续的多项( 并单击鼠标选择不连续的多项 或取消选中项)。 并单击鼠标选择不连续的多项(或取消选中项)。 MultiSelect 属性在运行时是只读的。 属性在运行时是只读的 在运行时是只读的。