|
|
|
|
| > |
|
|
|
|
|
|
|
默认的列表框控件名为 ListX(X为阿拉伯数字 1、2、3,等等),规则的命名方式为:LstX(X为用户自定义的名字,如 LstName、LstUser,等等)。 一、列表框控件的主要属性: 列表框中可以有多个项目供选择,用户通过单击某一项选择自己所需要的项目,如果项目太多,超出了列表框设计时的长度,则自动增加竖向滚动条,如图二:
除了一些常见的诸如 Font 、Height、Left、Width、Enabled、Name 等属性外,列表框还有一些特殊的属性: 1、List(列表)属性: List 是列表框最重要的属性之一,其作用是罗列或设置表项中的内容。可以在界面设置时直接输入内容,如图三:
在程序运行时,列表框中所有的选项,都可以通过 List(下标值) 的形式表示。比如列表框中的第一项,用 List(0)表示,列表框中的第二项,用 List(1)表示,列表框中的第十项,用 List(9)表示,以此类推。 大家注意,列表框中的第一项,是 List(0) ,而不是 List(1) 。 <1>、List() 属性的使用是非常灵活的,比如我们要从如图二的列表框(Lst1)中取出第三项内容,可以用下面的代码做到:A$ = Lst1.List(2) 其中,A 是一个变量;$ 指明了这个变量的类型:字符串型;这句话的意思是:将 Lst1 列表框中第三项(List(2))取出来然后赋值给字符串变量 A 。 象上面这种赋值办法,在 VB 中是非常普遍的,又如以前我们学到的: LblShow.Caption = "Visual Basic",这句话是指将 Visual Basic 这个字符串赋值给 LblShow 标签控件并作为其标题。 紧接上面的内容,假设我们用一个标签显示出刚才取出的表项: LblShow.Caption = A$ 那么显示的结果正是我们取出的选项。 可见,取出某个列表框中的某一表项并将其赋值给某个变量,代码如下: 字符串变量 = 列表框名称.List(X) ,其中,X 是下标。 <2>、通过 List() 改变原有表项:假设我们要将如图二的列表框中第三项内容改为“跟我学 VB”,只需输入下面的代码即可: Lst1.List(2) = "跟我学 VB" 上句话的意思是将“跟我学 VB”字符串赋值给 Lst1 并作为其第三项的内容。 结果如图四:
可见,要修改某个列表框中某一选项: 列表框名称.List(X) = "欲修改成的内容" ,其中,X 是下标。 2、ListCount 属性: 本属性返回列表框表项数量的数值,只能在程序运行时起作用。比如:一个有着四种选项的列表框,那么 ListCount 就为 4 ;一个列表框有五个选项,那么 ListCount 就为 5 。 返回一个列表框的表项数量值并将其赋值给某个变量,代码如下: 数值型变量 = 列表框名称.ListCount 比如要返回图二列表框的 ListCount: X% = Lst1.ListCount ,其中,X 是变量,% 表示X是整数类型的变量。 3、ListIndex(索引)属性: 本属性用来返回或设置控件中当前选择项目的索引号,只能在程序运行时使用。第一个选项的索引号是 0 ,第二个选项的索引号是 1 ,第三个选项的索引号是 2 ,依此类推,ListCount 始终比最大的 ListIndex 值大 1 。当列表框没有选择项目时, ListIndex 值为 -1 。 在程序中设置 ListIndex 后,被选中的项目呈反相显示,如图五:
在列表框控件的所有属性中,本属性是非常重要的,因为一个列表,事先你并不知道用户将要选择哪一条项目,这时,只有根据 ListIndex 返回的数值,我们才能让程序针对用户的选择做出适当的反应。 返回 ListIndex 的代码如下: X% = 列表框名称.ListIndex 联想:根据前面的知识我们知道,要取出第三项内容,代码如下: A$ = Lst1.List(2) 假设现在选中的是第三项,但我们事先不知道用户要选择这一项,那么又应该如何访问这第三项呢? 代码如下:A$ = Lst1.List(Lst1.ListIndex) 此时,Lst1.ListIndex 等同于 2 。 4、Columns(列)属性: 本属性用来确定列表框的列数,当值为 0 时,所有项目呈单列显示;当值为 1 或者大于 1 ,项目呈多列显示。Columns 属性只能在界面设置时指定。如图六: 图六 默认状态时,如果项目的总高度大于列表框的高度,那么列表框右边会自动增加一个垂直滚动条,用来上下移动列表框。 5、MultiSelect(多重选择)属性: 本属性决定了选项框中的内容是否可以进行多重选择,只能在界面设置时指定,程序运行时不能予以修改。如图七:
图七 MultiSelect 共有三个值:0 ,不允许多项选择,如果选择了一项就不能选择其他项;1 ,允许多重选择,但功能不如 2 ,可以用鼠标或空格选择;2 ,功能最强大的多重选择,可以结合 Shift 键或 Ctrl 键完成多个表项的多重选择。方法是:单击所要选择的范围的第一项,然后按住 Shift 键,再单击选择范围最后一项。 6、Style(类型)属性: 本属性决定了列表框的外观,共有两个值:1 ,Standard ,即为标准型,如图八:
图八 2 ,CheckBox ,复选框型,如图九:
本属性只能在界面设置时确定。 7、Selected(选中)属性: 本属性返回或设置在列表框控件中某项目是否选中的状态。选中时,值为 True ;未被选中,值为 False 。 代码规则如下: 列表框名称.Selected(索引值) = True/False 注意,索引号其实是项目的下标值,如果是第三项,那么索引值是 2 ,如果是第十项,那么索引值是 9 ,以此类推。 例一:有如图十这样一个应用程序:
列表框(LstName)中是人物的名称,用户选择不同的名字,下面的标签(LblShow)自动显示此人的相关信息。 源代码如下: Private Sub LstName_Click() 本程序是根据用户选择的不同,在标签按件中显示不同的信息;另外,我们用到了前面学到的 If ···Then··· ElseIf··· End If 语法。 8、SelCount(选中项目数量): 只有当 MultiSelect 属性值为 1 或 2 时,本属性才起作用,用来读取列表框中所选项目的数目,通常与 Selected 一起使用,以处理控件中的所选项目。 二、列表框控件的主要事件: 列表框控件主要接收 Click 与 DblClick 。 三、列表框控件的方法: 1、增加项目:AddItem 用 AddItem 可以为列表框增加项目,代码规则如下: 其中,索引值是可选项,是指欲增项目放到原列表框中的第几项,如放在第三项,那么索引值是 2 ,放在第五项,索引值则是 4 。 假设我们要在如图十这样的程序中增加项目:LstName.AddItem "郝海东",4 2、清除所有:Clear 用 Clear 可以清除列表框中所有的内容,代码如下: 3、删除选项:RemoveItem 此方法可以删除列表框中指定的项目,代码如下: 同样如图十的程序,假设我们要删除第三个项目,代码如下: 联想:对于任意一个列表框,要删除已经选中的项目,代码如下: 比如:LstName.RemoveItem LstName.ListIndex 为什么这样写?请大家仔细想想。 四、知识点: 1、本节的难点在于 List() 、ListIndex ,请大家一定要 多练习。 2、本节提到了变量,关于它们的详细情况,我们将在以后学习,目前大家只需要知道,这里的变量只是个临时工,主要用来储存一些临时数据。 十、下拉列表框控件(ComboBoc) 下拉列表框控件有时也可以称为下拉框控件或组合框控件,它可以让用户选择其中的某一项或输入新的内容。其常用属性如下: (1)Locked属性:设置该控件中的内容是否允许被用户改变。 (2)Sorted属性:设置该控件中的内容是否自动排序。 (3)Style属性:设置控件的风格。 该属性有如下几种取值: “0-Dropdown Combo":该属性的默认值,表示下拉式列表框。若Stylc属性设置为此值,在程序运行时,该控件将包含一个文本框,其右边—个三角形的箭尖,单击此箭头将会出用户可以选择。 “1-Simple Combo”:表示简单下拉列表框。程序运行时,该控件将包含一个文本框和不可下拉的列表框,用户可以从列表中选择一个或直接在文本框中输入。这种风格的下拉列表占用的窗体空间比较大,且在设计时要注意调整其大小。 “1-Dropdown L1st”:表示下拉正式列表。这种风格和第—种风格类似、区别是用户只能从下拉列表中选择某项,但不能在文本框中输入。 (4)Text属性:返回或设置在没有选择时下拉列表框中的内容。若没有设置该项,则显示该空件的名称。上图所示的—下拉列表框控件,就是将Text属性设置成“媒体播放软件”。 (5)List属性:返回或设置—下拉列表各项的内容。 为控件的下拉列表添加内容有两种方法:一种是在设计窗体时时,在属性窗口中单击List属性右边的小三角形箭头,然后再中输入输入内容,输入完—项后,按“Ctrl+Enter”组合键换行,直到渝入完所有内容;另一种方法是在程序代码中动态的添加各列表项,至于具有添加过程将在下拉列表框控件的常用方法中介绍。 在程序运行时,我们可以通过代码来读取或设置列表框中已经的内容。要访问列表框中的如:控件名.Iist(序号)的代码访问。其中,序号的最小值为0,最大值为所有项目的总数。例如: Msgbox Combo1.List(2) Combo1.List(3)=”xxx” 上面两个语句就是将列表框中第3项的内容显示;并设置了第四项的内容为“xxx” 下面这两个属性在设计时是不可用的,只有在程序运行时通过代码访问。 (6)ListIndex属性:返同或设置当前选中项目的序号。通过访问该属性即可知道用户选择了列表中的哪一项。 (7)ListCount属性:返回列表中所有项目的总数。 下拉列表框控件的常用事件如下: (1)Click事件:当单击列表中的某项时就会触发该事件。一般是在此事件过程中编写对 用户选择的内容进行操作的代码。 (2)Change事件:当下拉列表框控件的文本框部分中的内容改变时就会触发该事件。若Style属性的值为“2-Dropdown List",将不会发生该事件。 I (3)DblClick事件:若Style属性的值为“1-Simple Combo",且程序运行时双击了列表中的某项内容时,就会触发该事件。 下拉列表框控件的常用方法如下: (1)Addltem方法:使用该方法可以将新的项目添加到控件的列表中。其使用格式如下: 下拉列表框控件名.Addltem项目,[序号] 其中,项目是添加到列表中显示的内容,是字符型的数据。序号是可选的,如果使用该方法时给出了一个有效的序号,则将新添的项目话在列表中的相应位置;如果没有给出序号,则还要根据Sorted属性的值来决定该项目放在什么位置,若Sorted属性值为了True,则将项明加到符合顺序的位置;若其值为False,则将项目添加到列表的最后。例如: Combo1.AddItem "abc", 1 Combo1.AddItem "bcd" 上面两个语句的作用分别是添加一个新的项目到列表的第二项、添加一个新的项目并的决定其位置。 (2)Rovemove方法:删除控件的列表中的某个项目。其使用格式为: 下拉列表框控名.Rovemove序号 (3)clear方法:清除列表中的所有内容。该方法无需任何参数。 十一、列表框控件(ListBox) 列表框控件是用来显示多个项目,并可以让用户从中选择一项或多项。列表框控件的很多属性的用法及意义与下拉列表框控件是一样的,其常用属性如下: (1)Columns属性:设置列表框中的内容是水平滚动还是垂直滚动,若是水平滚动列表框中的内容分几列显示。当其值0时,列表框控件为垂直滚动;若其值不为0,则表示是水平滚动,其值为几就分为几列。 (2)List属性:返回或设置列表框中的内容。可参见下拉列表框控件中该属性的介绍。 (3)MultiSelect属性:设置在列表框中是否允许用户选择多项。具取值有如下三种 “0-None”:不允许选择多项。 “1-Simple”:简单多项选择。在程序运行时,可通过单击鼠标左键或按空格有决定是否选择某项。 “2-Extended”:扩展多项选择。这种方式选择多项时,与在标准的Windows程序选择其它内容的方法一样,是通过鼠标加键盘的“Ctrl”键或“ Shift”键来选择多项。 (4)SelCount属性:返回列表中被选项目的总数,该属性在设计时不可用。 (5)Selected属性:返回或设置列表中某个项目的选样状态。该属性的使用方法与下拉列表控件的List属性类似,只是它的值是布尔型的。例如要将列表中的设置为选中状态可以使用这个语句:List1.Selected(2)=True (6)Sorted属性:设置该列表中的内容是否自动排序。 (7)Styles属性:设置列表框控见的风格。有如下两种取值: “0-Standard”:标准风格 “1-CheckBok”:复选框风格。若选择这种风格,在每个项目的前面都将会一个复选框。 列表框控件的常用事件是单击事件和双击事件。 列表框常用的方法如:AddItem、Rovemove、Clear的使用方法及作用与下拉列表框控件一样的。
|
|
|
|
| |