listview控件(vba的附加控件中没有listview)

本文目录
- vba的附加控件中没有listview
- vb中控件listview的详细使用
- VB.NET ListView1控件添加数据
- ListView控件的示例
- vb中listview怎么添加数据,新添加的数据显示在第一行,然后一直添加n行
- C# winform的listview控件如何添加数据
- ListView控件的介绍
- listview控件ColumnHeader对象
- vb中如何在listview中添加数据
- 如何在Android中使用listview
vba的附加控件中没有listview
listview控件在php的使⽤⽅法,VBA窗体之ListView控件的基本
应⽤VBA实例教程
今天我们来看⼀下VBA窗体中的ListView控件的基本⽤法。ListView控件的最基本⽤法是在窗体中以表格形式显⽰数据,是应⽤⾮常⼴泛的⼀个窗体控件。控件⼯具箱在初始状态下是没有ListView控件的,需要我们在⼯具-附加控件中勾选"Microsoft ListView
Control,Version 6.0",这样ListView控件就会显⽰在控件⼯具箱中了。ListView分为表头和数据两部分,⽽数据部分的第⼀列和其他列⼜是分开的,需要⽤不同的⽅式来访问。假设我们在Sheet1中有⼀个5⾏4列的表格,现在我们看下怎样将这个表格中的数据导⼊到ListView控件中。
下⾯我们先来看怎样给ListView控件添加表头。有两种⽅法,先来看第⼀种
Private Sub UserForm_Initialize()
ListView1.ColumnHeaders.Add 1, "A", "姓名", ListView1.Width / 4, lvwColumnLeft ’列数,key,text,宽度,对齐⽅式,图⽚
ListView1.ColumnHeaders.Add 2, "B", "性别", ListView1.Width / 4, lvwColumnCenter
ListView1.ColumnHeaders.Add 3, "C", "年龄", ListView1.Width / 4, lvwColumnCenter
ListView1.ColumnHeaders.Add 4, "D", "住址", ListView1.Width / 4, lvwColumnCenter
ListView1.View = lvwReport ’显⽰⽅式
ListView1.FullRowSelect = False ’是否整⾏选取
ListView1.Gridlines = True ’是否显⽰表格线
End Sub
添加表头的第⼀种⽅法是⽤ColumnHeaders.Add的⽅法,该⽅法包括6个参数,⽐如上⾯第⼀⾏代码中1代表第⼀列,"A"是该列的⼀个简称(不写也可以),“姓名”是要显⽰的⽂字,下⼀个参数是宽度,这⾥我们⼀共4列,所以第⼀列宽度设为控件宽度(ListView1.Width)的
1/4,第5个参数是对齐⽅式,其中第⼀列必须是左对齐的,其他列可以设置左右或居中对齐,第6个参数是图标索引,我们后⾯再讲,这⾥其中所有的参数都是可省略的,⼀般写上显⽰的⽂字和宽度即可。ListView1.View是设置ListView控件的显⽰⽅式,⼀共四种,这⾥lvwReport是报表形式显⽰,其他的我们后⾯再讲。FullRowSelect是指可否整⾏选取,Gridlines是否显⽰⽹格线,这些属性⾃⼰试下就知道了。
当然我们也可以⽤循环的⽅式来简化代码
Private Sub UserForm_Initialize()
Dim i
For i = 1 To 4
ListView1.ColumnHeaders.Add i, , Cells(1, i), ListView1.Width / 4
Next
ListView1.FullRowSelect = True
ListView1.View = lvwReport
ListView1.Gridlines = True
End Sub
对列加了个For循环⽽已,其实是完全相同的。
下⾯我们来看怎样向ListView控件中添加数据。两种⽅法,下⾯来看第⼀种
Private Sub CommandButton1_Click()
Dim itm As ListItem, i, List, li
ListView1.ListItems.Clear ’清除数据
For i = 2 To 5
Set itm = ListView1.ListItems.Add ’添加⼀个空⾏
itm.Text = Cells(i, 1) ’添加第⼀列
itm.SubItems(1) = Cells(i, 2) ’添加第⼆列
itm.SubItems(2) = Cells(i, 3)
itm.SubItems(3) = Cells(i, 4)
Next
End Sub
当然添加新数据之前要把原有数据先删除,⽤的是ListItems的Clear⽅法ListItem对象就是控件的⾏。先⽤ListItems的Add⽅法添加⼀个空⾏,⽤变量itm来表⽰,下⾯就要向这个空⾏中添加数据,我们上⾯说过第⼀列和其他列的表⽰⽅法是不同的,第⼀列赋值要⽤Text,之后各列⽤SubItems数组来赋值,第2列序号是1,第3列序号是2,依次类推。
下⾯来看添加数据的另⼀种⽅法,ListSubItems对象
’ For i = 2 To 5
’ Set List = ListView1.ListItems.Add(Text:=Cells(i, 1))
’ Set li = List.ListSubItems.Add(Text:=Cells(i, 2)) ’subitems是个数组,Listsubitems是个对象集合
’ Set li = List.ListSubItems.Add(Text:=Cells(i, 3))
’ Set li = List.ListSubItems.Add(Text:=Cells(i, 4))
’ Next
前⾯都⼀样,我只把For循环这段贴出来了,同样是⽤ListItems.Add新建⼀个空⾏,不同的是直接给其赋了⼀个值,这个值就是赋在第⼀列的,之后⼜⽤List(刚添加的空⾏)的ListSubItems的Add⽅法,相当于在该⾏添加⼀个列,再赋值,有⼏列就添加⽤个ListSubItems。ListSubItems和SubItems的区别在于前者是⼀个对象集合,既然是对象就有可以设置格式(可以和⼯作表的Range对象类⽐),⽽后者仅仅是⼀个数组,因此也就不存在格式之类的属性了,所以如果需要给ListView控件改变格式就要⽤ListSubItems对象。
¥
5.9
百度文库VIP限时优惠现在开通,立享6亿+VIP内容
立即获取
listview控件在php的使用方法,VBA窗体之ListView控件的基本应用VBA实例教程
listview控件在php的使⽤⽅法,VBA窗体之ListView控件的基本
应⽤VBA实例教程
今天我们来看⼀下VBA窗体中的ListView控件的基本⽤法。ListView控件的最基本⽤法是在窗体中以表格形式显⽰数据,是应⽤⾮常⼴泛的⼀个窗体控件。控件⼯具箱在初始状态下是没有ListView控件的,需要我们在⼯具-附加控件中勾选"Microsoft ListView
第 1 页
Control,Version 6.0",这样ListView控件就会显⽰在控件⼯具箱中了。ListView分为表头和数据两部分,⽽数据部分的第⼀列和其他列⼜是分开的,需要⽤不同的⽅式来访问。假设我们在Sheet1中有⼀个5⾏4列的表格,现在我们看下怎样将这个表格中的数据导⼊到ListView控件中。
下⾯我们先来看怎样给ListView控件添加表头。有两种⽅法,先来看第⼀种
第 2 页
Private Sub UserForm_Initialize()
ListView1.ColumnHeaders.Add 1, "A", "姓名", ListView1.Width / 4, lvwColumnLeft ’列数,key,text,宽度,对齐⽅式,图⽚
ListView1.ColumnHeaders.Add 2, "B", "性别", ListView1.Width / 4, lvwColumnCenter
ListView1.ColumnHeaders.Add 3, "C", "年龄", ListView1.Width / 4, lvwColumnCenter
第 3 页
ListView1.ColumnHeaders.Add 4, "D", "住址", ListView1.Width / 4, lvwColumnCenter
ListView1.View = lvwReport ’显⽰⽅式
ListView1.FullRowSelect = False ’是否整⾏选取
ListView1.Gridlines = True ’是否显⽰表格线
第 4 页
End Sub
添加表头的第⼀种⽅法是⽤ColumnHeaders.Add的⽅法,该⽅法包括6个参数,⽐如上⾯第⼀⾏代码中1代表第⼀列,"A"是该列的⼀个简称(不写也可以),“姓名”是要显⽰的⽂字,下⼀个参数是宽度,这⾥我们⼀共4列,所以第⼀列宽度设为控件宽度(ListView1.Width)的
第 5 页
1/4,第5个参数是对齐⽅式,其中第⼀列必须是左对齐的,其他列可以设置左右或居中对齐,第6个参数是图标索引,我们后⾯再讲,这⾥其中所有的参数都是可省略的,⼀般写上显⽰的⽂字和宽度即可。ListView1.View是设置ListView控件的显⽰⽅式,⼀共四种,这⾥lvwReport是报表形式显⽰,其他的我们后⾯再讲。FullRowSelect是指可否整⾏选取,Gridlines是否显⽰⽹格线,这些属性⾃⼰试下就知道了。
第 6 页
当然我们也可以⽤循环的⽅式来简化代码
Private Sub UserForm_Initialize()
Dim i
For i = 1 To 4
ListView1.ColumnHeaders.Add i, , Cells(1, i), ListView1.Width / 4
Next
第 7 页
ListView1.FullRowSelect = True
ListView1.View = lvwReport
ListView1.Gridlines = True
End Sub
对列加了个For循环⽽已,其实是完全相同的。
下⾯我们来看怎样向ListView控件中添加数据。两种⽅法,下⾯来看第⼀种
第 8 页
Private Sub CommandButton1_Click()
Dim itm As ListItem, i, List, li
ListView1.ListItems.Clear ’清除数据
For i = 2 To 5
Set itm = ListView1.ListItems.Add ’添加⼀个空⾏
itm.Text = Cells(i, 1) ’添加第⼀列
第 9 页
itm.SubItems(1) = Cells(i, 2) ’添加第⼆列
itm.SubItems(2) = Cells(i, 3)
itm.SubItems(3) = Cells(i, 4)
Next
End Sub
当然添加新数据之前要把原有数据先删除,⽤的是ListItems的Clear⽅法ListItem对象就是控件的⾏。先⽤ListItems的Add⽅法添加⼀个空⾏,⽤变量itm来表⽰,下⾯就要向这个空⾏中添加数据,我们上⾯说过第⼀列和其他列的表⽰⽅法是不同的,第⼀列赋值要⽤Text,之后各列⽤SubItems数组来赋值,第2列序号是1,第3列序号是2,依次类推。
第 10 页
下⾯来看添加数据的另⼀种⽅法,ListSubItems对象
’ For i = 2 To 5
’ Set List = ListView1.ListItems.Add(Text:=Cells(i, 1))
’ Set li = List.ListSubItems.Add(Text:=Cells(i, 2)) ’subitems是个数组,Listsubitems是个对象集合
第 11 页
’ Set li = List.ListSubItems.Add(Text:=Cells(i, 3))
’ Set li = List.ListSubItems.Add(Text:=Cells(i, 4))
’ Next
前⾯都⼀样,我只把For循环这段贴出来了,同样是⽤ListItems.Add新建⼀个空⾏,不同的是直接给其赋了⼀个值,这个值就是赋在第⼀列的,之后⼜⽤List(刚添加的空⾏)的ListSubItems的Add⽅法,相当于在该⾏添加⼀个列,再赋值,有⼏列就添加⽤个ListSubItems。ListSubItems和SubItems的区别在于前者是⼀个对象集合,既然是对象就有可以设置格式(可以和⼯作表的Range对象类⽐),⽽后者仅仅是⼀个数组,因此也就不存在格式之类的属性了,所以如果需要给ListView控件改变格式就要⽤ListSubItems对象。
vb中控件listview的详细使用
1、首先,点击文件-》新建-》项目,打开项目创建视窗,切换到Visual Basic,选择Windows窗体应用程序,新建一个。
2、在左侧工具箱中找到ListView控件,单击并在右侧窗体中创建一个。
3、点击ListView控件右上角的小按钮,展开ListView任务面板,点击项,打开ListViewItem集合器。
4、新建一个按钮,在按钮的事件响应函数中写下MsgBox(ListView1.ToString()),ListView的ToString函数返回的是这个控件的信息,如图。
5、如果要获取所有item的信息,使用For Each循环遍历item如下。
6、这样把每个列表元素的ToString等信息存到tps字符串,显示出来如图。
VB.NET ListView1控件添加数据
要使用ListView控件,需要加入组件:
Microsoft Windows Common Controls 6.0
Windows资源管理器的右半部分,就是一个ListView控件。
作用
列出并列关系的对象及对象属性。
ListView控件的对象层次结构
ListView -整个控件
ColumnHeaders -标题行
ColumnHeader -标题列
ListItems -对象行集合
ListItem -对象行
ListSubItems -对象属性集合
ListSubItem -对象属性
注意:SubItems和ListSubItems的区别:SubItems是一个String数组;ListSubItems是一个集合。
属性
View:设置ListView的外观
Sorted:设置ListView中的对象集合是否排序。
SortKey:设置以第几项排序。从零开始。
SelectedItem:返回选中的对象的引用。
事件
AfterLabelEdit:ListItem对象的标签时被触发。
BeforeLabelEdit:ListItem对象的标签后出发。
ColumnClick:单击列标题时触发。参数中可以获得被单击的列对象。通常用于排序。
ItemClick:单击某行或某ListItem时触发。参数中可以获得被单击的ListItem对象。
方法
FindItem:搜索ListItem对象。
参数:
string:搜索字符串。
value:在ListItem的哪部分中搜索(LvwText、LvwSubItem、LvwTag);index:开始搜索的位置。
match:匹配方式。
HitTest:检索位于特定坐标处的ListItem对象。
ListView控件比前面几种控件要复杂一些,通过此控件,可将项目组成带有或不带有列标头的列,并显示伴随的图标和文本。ListView控件是由ColumnHeader和ListItem对象所组成的,其中ColumnHeader对象的个数决定了控件的列数,而ListItem对象的个数则决定了控件的行数。(图7)
ColumnHeader对象是ListView控件中包含标头文字的项目。利用ColumnHeader对象,用户可以:
▲单击对象触发ColumnClick事件并根据数据项目将项目排序。
▲拖动对象的右边框来调整列宽度。
▲在报表视图中隐藏ColumnHeader对象。
ColumnHeader对象的数目决定每个ListItem对象可包含的子项目数目。删除ColumnHeader对象后所有与列关联的子项目也将被删除,并且每个ListItem对象的子项目数组将平移以更新ColumnHeader的索引,而这将导致剩余的列标头SubItemIndex属性的改变。
ColumnHeader对象的SubItemIndex属性
该属性返回与ListView控件中ColumnHeader对象关联的子项目的索引。子项目是字符串数组,代表显示在报表视图中的ListItem对象的数据。第一列的列标头SubItemIndex属性设置为0,这是因为小图标和ListItem对象的文字总出现在第一列中,而且它们被当作ListItem对象而不是子项目。列标头数目取决于子项目数目。列标头数目总是比子项目数目多1。
在设计时可以利用属性页的“列首”选项卡将ColumnHeader对象添加到ListView控件中,在运行时则用Add方法添加。
ColumnHeader对象的Add方法
该方法的使用与前面那些控件基本相似,就不再介绍了。
ListView1.ColumnHeader.Add(index,key,text,width,alignment)
ListItem对象是指控件中的一行(不包含标头行)的所有内容。它也可包含文本和图片,但是要使用图片则必须通过Icons和SmallIcons属性引用ImageList控件。
ListItem对象的SubItems属性
返回或设置一个字符串(子项目)数组,它代表ListView控件中ListItem对象的数据。
ListItem对象可包含任意多个的关联项目数据字符串(子项目),但每个ListItem对象子项目数目必须相同。每个子项目都对应于相关的列标头,无法直接向子项目数组添加元素,只有通过ColumnHeaders的Add方法添加列标头的方法来添加子项目。
ListItem对象的Add方法
该方法添加ListItem对象到ListView控件的ListItems集合中并返回对新创建对象的引用。
它的语法如下:
ListItem1.Add(index,key,text,icon,smallIcon)
ListView控件的View属性
ListView控件可使用四种不同视图显示项目,这可以用View属性来确定。该属性返回或设置ListView控件中ListItem对象的外观。
ListView控件的SortOrder,SortKey和Sorted属性
控件中的ListItem对象可以按要求进行排序,与排序有关的属性是SortOrder,Sorted和SortKey属性。
SortOrder属性返回或设置一个值,此值决定ListView控件中的ListItem对象以升序或降序排序。
SortKey属性返回或设置一个值,此值决定ListView控件中的ListItem对象如何排序。
Sorted属性返回或设置确定ListView控件中的ListItem对象是否排序的值。
下面的代码说明了如何创建ColumnHeaders和ListItem对象,SubItemIndex和SubItem属性的使用方法以及如何排序。
Private Sub Form_load()
’确保ListView控件的view属性为报表视图。
ListView1.View=lvwReport
’添加三列。
ListView1.ColumnHeaders.Add,"Name","姓名"
ListView1.ColumnHeaders.Add,"Sex","性别"
ListView1.ColumnHeaders.Add,"Age","年龄"
’向控件添加ListItem对象。
Dim itmX As ListItem
’添加column1的名称。
Set itmX=ListView1.ListItems.Add(1,"ZL","张力")
’使用SubItemIndex将SubItem与正确的ColumnHeader关联。使用关键字("Sex")指定正确的ColumnHeader。
itmX.SubItems(ListView1.ColumnHeaders("Sex").SubItemIndex)="男"
’使用ColumnHeader关键字将SubItems字符串与
’正确的ColumnHeader关联。
itmX.SubItems(ListView1.ColumnHeaders("Age").SubItemIndex)="19"
Set itmX=ListView1.ListItems.Add(1,"LF","李芳")
itmX.SubItems(ListView1.ColumnHeaders("Sex").SubItemIndex)="男"
itmX.SubItems(ListView1.ColumnHeaders("Age").SubItemIndex)="22"
Set itmX=ListView1.ListItems.Add(1,"WW","王伟")
itmX.SubItems(ListView1.ColumnHeaders("Sex").SubItemIndex)="男"
itmX.SubItems(ListView1.ColumnHeaders("Age").SubItemIndex)="24"
End Sub
Private Sub ListView1_ColumnClick(ByVal ColumnHeader As ComctlLib.ColumnHeader)
Select Case ColumnHeader.Key
Case "Sex":ListView1.SortKey=1
ListView1.SortOrder=lvwAscending
ListView1.Sorted=True
Case "Age":ListView1.SortKey=2
ListView1.SortOrder=lvwAscending
ListView1.Sorted=True
End Select
End Sub
ListView控件的示例
下面的示例使用Biblio.mdb数据库作为资源,通过ListItem对象移居ListView控件。要试用此例,请将一个ListView控件放置在窗体上,并将代码粘贴到窗体的声明部分。
还必须确保已将Biblio.mdb安装在机器上。在以下代码中检查OpenDatabase函数中的路径,并改变它,使之反映Biblio.mdb在机器上的实际路径。
注意:除非添加到Microsoft DAO 3.5对象库的“引用”,否则示例无法运行。为此,在Project菜单上单击 References。搜索Microsoft DAO 3.5对象库并单击复选框来选择。
Private Sub Form_Load()
’添加 ColumnHeaders。列宽度等于控件宽度
’除以 ColumnHeader 对象的数目。
ListView1.ColumnHeaders. _
Add , , Author, ListView1.Width / 3)
ListView1.ColumnHeaders. _
Add , , Author ID, ListView1.Width / 3, _
lvwColumnCenter
ListView1.ColumnHeaders. _
Add , , Birthdate, ListView1.Width / 3)
’ Set View property to Report.
ListView1.View = lvwReport
’为数据访问对象声明对象变量。
Dim myDb As Database, myRs As Recordset
’设置 Database 为 BIBLIO.MDB 数据库。
’ IMPORTANT: the Biblio.mdb must be on your
’ machine, and you must set the correct path to
’ the file in the OpenDatabase function below.
Set myDb = DBEngine.Workspaces(0) _
.OpenDatabase(c:\Program Files\VB\BIBLIO.MDB)
’设置 recordset 为 Authors 表。
Set myRs = _
myDb.OpenRecordset(Authors, dbOpenDynaset)
’声明变量以添加 ListItem 对象。
Dim itmX As ListItem
’若当前记录不是最后一条记录,则添加一个 ListItem 对象。
’ListItem 对象的文本使用 author 字段。
’ListItem 对象的 SubItem(1) 使用 AuthorID 字段。
’ListItem 对象的 SubItem(2) 使用 Year of Birth 字段。
While Not myRs.EOF
Set itmX = ListView1.ListItems. _
Add(, , CStr(myRs!Author),1) ’Author 字段。
’若 AuthorID 字段不为空,则将 SubItem 1 设置为此字段。
If Not IsNull(myRs!Au_id) Then
itmX.SubItems(1) = CStr(myRs!Au_id) ’ Author ID。
End If
’若 birth 字段不为空,则将 SubItem 2 设置为此字段。
If Not IsNull(myRs!) Then
itmX.SubItems(2) = myRs!
End If
myRs.MoveNext ’移动到下一条记录。
Wend
End Sub
vb中listview怎么添加数据,新添加的数据显示在第一行,然后一直添加n行
Dim itm As ListItem
Set itm = ListView1.ListItems.Add(, , ListView1.ListItems.Count + 1) ’序号
itm.SubItems(1) = namestr
itm.SubItems(2) = sexstr
C# winform的listview控件如何添加数据
theCtrl.InsertItem(0, "张三");
第一个参数是索引即行数,写0就是插到第一行,第二个参数是内容
theCtrl.SetItemText(0, 1, "初三四班");
第一个参数同样是行索引,第二个参数是列索引,第三个不说了
首先使用theCtrl.GetItemCount();获得列表中的总行数。比如n=theCtrl.GetItemCount();
然后使用theCtrl.InsertItem(n, "张三");新加一行,但新增的行只有第一列有数据,就是"张三",后面的列就可以用theCtrl.SetItemText(n, 1, "初二六班");的方法进行设置或修改了。
当然不用获得总行数,直接用theCtrl.InsertItem(0, "张三");会把新行插到第一行的位置,类似于头插法,上面说的那个相当于尾插法。
ListView控件的介绍
ListView 控件可使用四种不同视图显示项目。通过此控件,可将项目组成带有或不带有列标头的列,并显示伴随的图标和文本。 可使用 ListView 控件将称作 ListItem 对象的列表条目组织成下列四种不同的视图之一:1.大(标准)图标2.小图标3.列表4.报表 View 属性决定在列表中控件使用何种视图显示项目。还可用 LabelWrap 属性控制列表中与项目关联的标签是否可换行显示。另外,还可管理列表中项目的排序方法和选定项目的外观。
listview控件ColumnHeader对象
要使用ListView控件,需要加入组件: Microsoft Windows Common Controls 6.0 Windows资源管理器的右半部分,就是一个ListView控件。 作用 列出并列关系的对象及对象属性。 ListView控件的对象层次结构 ListView -整个控件 ColumnHeaders -标题行 ColumnHeader -标题列 ListItems -对象行集合 ListItem -对象行 ListSubItems -对象属性集合 ListSubItem -对象属性 注意:SubItems和ListSubItems的区别:SubItems是一个String数组;ListSubItems是一个集合。 属性 View:设置ListView的外观 Sorted:设置ListView中的对象集合是否排序。 SortKey:设置以第几项排序。从零开始。 SelectedItem:返回选中的对象的引用。 事件 AfterLabelEdit:ListItem对象的标签时被触发。 BeforeLabelEdit:ListItem对象的标签后出发。 ColumnClick:单击列标题时触发。参数中可以获得被单击的列对象。通常用于排序。 ItemClick:单击某行或某ListItem时触发。参数中可以获得被单击的ListItem对象。 方法 FindItem:搜索ListItem对象。 参数: string:搜索字符串。 value:在ListItem的哪部分中搜索(LvwText、LvwSubItem、LvwTag);index:开始搜索的位置。 match:匹配方式。 HitTest:检索位于特定坐标处的ListItem对象。 ListView控件比前面几种控件要复杂一些,通过此控件,可将项目组成带有或不带有列标头的列,并显示伴随的图标和文本。ListView控件是由ColumnHeader和ListItem对象所组成的,其中ColumnHeader对象的个数决定了控件的列数,而ListItem对象的个数则决定了控件的行数。(图7) ColumnHeader对象是ListView控件中包含标头文字的项目。利用ColumnHeader对象,用户可以: ▲单击对象触发ColumnClick事件并根据数据项目将项目排序。 ▲拖动对象的右边框来调整列宽度。 ▲在报表视图中隐藏ColumnHeader对象。 ColumnHeader对象的数目决定每个ListItem对象可包含的子项目数目。删除ColumnHeader对象后所有与列关联的子项目也将被删除,并且每个ListItem对象的子项目数组将平移以更新ColumnHeader的索引,而这将导致剩余的列标头SubItemIndex属性的改变。 ColumnHeader对象的SubItemIndex属性 该属性返回与ListView控件中ColumnHeader对象关联的子项目的索引。子项目是字符串数组,代表显示在报表视图中的ListItem对象的数据。第一列的列标头SubItemIndex属性设置为0,这是因为小图标和ListItem对象的文字总出现在第一列中,而且它们被当作ListItem对象而不是子项目。列标头数目取决于子项目数目。列标头数目总是比子项目数目多1。 在设计时可以利用属性页的“列首”选项卡将ColumnHeader对象添加到ListView控件中,在运行时则用Add方法添加。 ColumnHeader对象的Add方法 该方法的使用与前面那些控件基本相似,就不再介绍了。 ListView1.ColumnHeader.Add(index,key,text,width,alignment) ListItem对象是指控件中的一行(不包含标头行)的所有内容。它也可包含文本和图片,但是要使用图片则必须通过Icons和SmallIcons属性引用ImageList控件。 ListItem对象的SubItems属性 返回或设置一个字符串(子项目)数组,它代表ListView控件中ListItem对象的数据。 ListItem对象可包含任意多
vb中如何在listview中添加数据
Private Sub Command1_Click()
Dim xx As ListItem
Set xx = ListView1.ListItems.Add(, , "1111")
xx.SubItems(1) = "2222"
xx.SubItems(2) = "3333"
End Sub
Private Sub Form_Load()
ListView1.View = lvwReport
ListView1.ColumnHeaders.Add , , "第1列", 1000
ListView1.ColumnHeaders.Add , , "第2列", 1000
ListView1.ColumnHeaders.Add , , "第3列", 1000
End Sub
如何在Android中使用listview
创建继承BaseAdapter并实现其抽象方法的类MyListViewAdapter
说明
下面的讲解中,只创建自定义的适配器类,如何使用请参考android中常用控件的使用之ListView
1.创建类MyListViewAdapter
创建类MyListViewAdapter,该类继承BaseAdapter,并实现其抽象方法:
1
2
3
4
int getCount();
Object getItem(int position);
long getItemId(int position);
View getView(int position,View convertView,ViewGroup parent);
getCount需要返回有多少个item,也就是说最会在listview中展示这么多行
getItem需要返回参数position位置的数据
getItemId返回position就行了
2.给MyListViewAdapter类添加成员变量和构造方法
两个成员变量
1
2
List《String》 list;
Context context;
list表示要显示的数据,context变量在生成View对象时需要用到
构造方法:构造方法是为了给两个成员变量赋值
1
2
3
4
public MyListViewAdapter(List《String》 list , Context context) {
this.list = list;
this.context = context;
}
3.给getCount,getItem,getItemId方法添加代码
getCount需要返回有多少个item,也就是说最会在listview中展示这么多行,所以返回list.size
getItem需要返回参数position位置的数据,也就是list中第position项的值list.get(position)
getItemId返回position就行了
1
2
3
4
5
6
7
8
9
10
11
12
13
14
@Override
public int getCount() {
return list.size();
}
@Override
public Object getItem(int position) {
return list.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
4.给getView方法添加代码
getView方法是返回位置为position的View对象,第二个参数convertView考虑到资源重用问题,在上下滑动的过程中,需要显示某项的时候才会调用getView方法,而如果有某项被隐藏不显示,就会把不显示那一行的View作为convertView参数传入,如果没有某项被隐藏,convertView值为null。可以通过下面代码中的if(convertView!=null)中的输出来看哪一行被隐藏了。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
@Override
public View getView(int position, View convertView, ViewGroup parent) {
System.out.println("调用getView方法,显示position="+position+"项");
if(convertView!=null){
TextView t = (TextView) convertView.findViewById(R.id.firstTextView);
System.out.println(t.getText());
}else{
LayoutInflater layoutInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
convertView = layoutInflater.inflate(R.layout.item_mylistviewadapter, null);
}
TextView t = (TextView)(convertView.findViewById(R.id.firstTextView));
t.setText(list.get(position));
if(position%2==0)
{
t.setBackgroundColor(Color.WHITE);
}
else{
t.setBackgroundColor(Color.GRAY);
}
return convertView;
}
补充:通过xml生成View对象
通过Context对象生成一个LayoutInflater对象
调用LayoutInflater对象的inflate方法生成控件对象,inflate方法的第一个参数为xml文件,第二个参数一般为null。返回值为该xml文件最外层的标签对象。
1
2
LayoutInflater layoutInflater =(LayoutInflater)context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
LinearLayout convertView =(LinearLayout)layoutInflater.inflate(R.layout.item_mylistvie
源代码下载
pan.baidu.com/s/1ntuQDdv

更多文章:
bibliography(bibliography和reference的区别)
2026年11月2日 22:50
在线使用ps的网站(好用的在线抠图网站有哪些-有哪些好用的在线ps网站,怎么抠图)
2026年11月2日 17:50








