vb listview 的常用操作

摘要:
Index插入列表项的编号Key插入列表项的关键字Text插入列表项的文本Icon当为图标视图时要求显示的图标Smallicon当为小图标视图时要求显示的图标Clear清除listitems集合中所有的列表项Remove清除选定行L1=thisform.view1L1.listitems.removeAllowColumnReorder属性值设置.t.时,用户可以用鼠标选中1列拖至其他地方进行重新排列常用事件:AfterLabelEdit编辑当前选择的列表对象之后发生BeforeLabelEdit编辑当前选择的列表对象之前发生ItemClick单击某一列表对象时发生参数item对当前列表项的引用事件AfterLabelEdit:编辑ListItem对象的标签时被触发。

常用操作:
获取当前行数和列数:

MsgBox "行数:" & ListView1.ListItems.Count & "列数:" &ListView1.ColumnHeaders.CountPrivate Sub ListView1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
    ListView1.ToolTipText = "行数:" & ListView1.ListItems.Count & "列数:" &ListView1.ColumnHeaders.CountEnd Sub

设置宽度:

ListView1.ColumnHeaders.Add , , "备注", 1500

当前选中行:

MsgBox ListView1.SelectedItem.Index

获取复选框的值:

MsgBox ListView1.ListItems(1).Checked

删除指定行:

ListView1.ListItems.Remove 1

去掉鼠标左键点击标签编辑:labeledit属性改为1

读取某行第一列内容:

ListView1.ListItems(i).Text

读取某行第几列内容 (不包括第一列):

ListView1.ListItems(Num).SubItems (4)

读取当前选中行第一列内容:

ListView1.ListItems(ListView1.SelectedItem.Index).Text

循环查找读取项目:

Dim i As IntegerFor i = 1 ToListView1.ListItems.CountIf ListView1.ListItems(i).Text = 4 Then MsgBox ListView1.ListItems(i).Text '第一列If ListView1.ListItems(i).SubItems(1) = 4 Then MsgBox ListView1.ListItems(i).SubItems(1) '第二列Next i

清空列表头:

ListView1.ColumnHeaders.Clear

清空列表:

ListView1.ListItems.Clear

右键菜单:

Private Sub ListView1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = vbRightButton Then PopupMenu CommandLst '按下鼠标右键 显示菜单End Sub

当前选中判断:

DimNIf ListView1.ListItems.Count <> 0 
Then N = ListView1.SelectedItem.Index 
Else MsgBox "当前没有任何主机在线!", vbInformation, "警告:": 
Exit SubIf N < 1 Then MsgBox "你没有选中任何主机!", vbInformation, "警告:": 
Exit Sub

VB设置某行为选中/非选中状态:

ListView.ListItems(i).Selected = True '选中第i行ListView.ListItems(i).Selected = False '选中第i行

常用属性:
View设置或返回控件的视图类型值 说明

1-LvwIcon 图标类型2-LvwSmallIcon 小图标类型3-LvwList 列表类型4-LvwReport 报表类型

Arrange 设置后返回控件的图标排列方式(在图标视图下有效)值 说明

1-LvwNone 不排列2-LvwAutoLeft 自动靠右排列3-LvwAutoTop 自动靠左排列

Icons、 SmallIcons、 ColumnHeaderIcons属性
Icons指定图标视图时的图标与ImageList的绑定
SmallIcons、 ColumnHeaderIcons指定列表视图时的图标与ImageList的绑定

PICTURE、PictureAlignment属性
分别指定ListView控件的背景图片和布局方式

ListItems(Index) 属性
ListItems 属性是ListView控件中列表项的集合。Index用于指定列表项集合中的一个对象,
我们可以把这个对象看作对一行的引用

ListItems集合的属性
1. Text 设置或返回显示文本
2. key 关键字
3. index 索引编号
4. icon , smallicon 不同视图时显示单元格的图标
5. checked 给checkboxes 打√
6. selected 使处于选定状态
7. ListSubitems(index) 集合 我们可以把这个集合看作对这行中单元格的引用
Text 设置或返回单元格显示的内容

Reporticon 设置单元格的图标
8. Subitems(index) 设置或返回单元格文本 == ListSubitems(index).text

ColumnHeaders(index) 属性
ColumnHeaders 属性是ListView控件中列标头的集合
1. text 显示标题文本
2. key
3. index
4. icon 指定标题图标
5. alignment 指定index列的对齐方式 (注意:第一列也就是列表项不能指定)
6. position 返回当前列的索引
7. subitemindex 返回指定列的listsubitem索引
TextBackgroud 属性
决定text的背景是透明还是ListView的背景色
值 0 lvwTransparent 透明
lvw 不透明(用listview的背景色)
Ghosted 属性 logic
决定是否虚状
HideColumnHeaders 属性
隐藏表头
LabelWrap 属性
标签转行 View.LargeIcon 或 View.SmallIcon 时才使用该属性
FullRowSelect
整行显示
HotTracking
热点追踪 鼠标指针自动调整为手型
HoverSelection 属性
自动聚焦 鼠标指针自动调整为手型
AllowColumnReorder属性
值设置.t.时,用户可以用鼠标选中1列拖至其他地方进行重新排列
Sorted属性

当值为.t.时,列表按字母排序

常用方法:
ListItems.add(index,key,text,icon,smallicon)
向listitems添加一列表项。
Index 插入列表项的编号
Key 插入列表项的关键字
Text 插入列表项的文本
Icon 当为图标视图时要求显示的图标
Smallicon 当为小图标视图时要求显示的图标

Clear
清除listitems集合中所有的列表项

Remove清除选定行
L1=thisform.view1
L1.listitems.remove(L1.selectedItem.index)
AllowColumnReorder属性
值设置.t.时,用户可以用鼠标选中1列拖至其他地方进行重新排列

常用事件:
AfterLabelEdit
编辑当前选择的列表对象之后发生

BeforeLabelEdit
编辑当前选择的列表对象之前发生

ItemClick
单击某一列表对象时发生
参数 item 对当前列表项的引用
事件
AfterLabelEdit:编辑ListItem对象的标签时被触发。
BeforeLabelEdit:编辑ListItem对象的标签后出发。
ColumnClick:单击列标题时触发。参数中可以获得被单击的列对象。通常用于排序。
ItemClick:单击某行或某ListItem时触发。参数中可以获得被单击的ListItem对象。
方法
FindItem:搜索ListItem对象。
参数:
string:搜索字符串。
value:在ListItem的哪部分中搜索(LvwText、LvwSubItem、LvwTag);index:开始搜索的位置。
match:匹配方式。
HitTest:检索位于特定坐标处的ListItem对象。

vb 中的实例

Private SubForm_load() 
'确保ListView控件的view属性为报表视图。 ListView1.View=lvwReport 
'添加三列。 ListView1.ColumnHeaders.Add,"Name","姓名"ListView1.ColumnHeaders.Add,"Sex","性别"ListView1.ColumnHeaders.Add,"Age","年龄" '向控件添加ListItem对象。 Dim itmX AsListItem 
'添加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 SubPrivate Sub ListView1_ColumnClick(ByVal ColumnHeader AsComctlLib.ColumnHeader) 
Select CaseColumnHeader.Key 
Case "Sex":ListView1.SortKey=1ListView1.SortOrder=lvwAscending 
ListView1.Sorted=True Case "Age":ListView1.SortKey=2ListView1.SortOrder=lvwAscending 
ListView1.Sorted=True End Select End Sub

例二

Private SubUserForm_Initialize()
ListView1.ColumnHeaders.Add , , "QQ号" '添加QQ号列ListView1.ColumnHeaders.Add , , "呢称" '添加呢称列ListView1.ColumnHeaders.Add , , "来自何处" '添加来自何处列ListView1.View = lvwReport ''设置显示方式为报表格式End Sub

代码说明:
1、在工作表中用Column表示列。而在Listview控件中,用ColumnHeaders对象来操作列,而添加新的列可以用ColumnHeaders对象的ADD方法。具体如下:
ListView1.ColumnHeaders.Add 序号,唯一的字符串标识,列标显示文字,列宽,列的内容对齐方式,所使用的图标序号。
如本例中:ListView1.ColumnHeaders.Add , , "QQ号"
2、Listview控件的View 属性决定着它的显示的方式,具体如下: ListView1.View = lvwIcon '图标显示

ListView1.View = lvwSmallIcon '小图标显示 ListView1.View = lvwList '列表显示
ListView1.View = lvwReport '报表显示 添加效果:
示例文件:
代码:

Private Sub UserForm_Initialize() '声明变量类型Dim ITM As ListItem '添加QQ号列,列宽占总宽度的三分之一,左对齐ListView1.ColumnHeaders.Add , , "QQ号", ListView1.Width / 3, 
lvwColumnLeft '添加呢称列,列宽占总宽度的三分之一,居中对齐ListView1.ColumnHeaders.Add , , "呢称", ListView1.Width / 3, 
lvwColumnCenter '添加来自何处列,列宽占总宽度的三分之一,右对齐ListView1.ColumnHeaders.Add , , "来自何处", ListView1.Width / 3, 
lvwColumnRight '设置显示方式为报表格式ListView1.View = lvwReport '显示表格线ListView1.Gridlines = True '设置循环,填充记录 For i = 1 To [A65536].End(xlUp).Row '添加记录Set ITM = ListView1.ListItems.Add() '添加记录的行标题 定义产生一个新记录,新行 ITM.Text = Cells(i, 1) '添加记录的记录文本说明ITM.SubItems(1) = Cells(i, 2) '添加记录的第一个字段的内容,在第二列上显示ITM.SubItems(2) = Cells(i, 3)NextiEnd Sub

代码说明:

1、ListView1的Gridlines属性为True时显示表格线,为False不显示表格线。
2、在ListView控件中,添加记录要通过ListItems集合对象来实现,如本例中Set ITM = ListView1.ListItems.Add()
3、设置第一列的内容是通过text属性来添加,而以后各列的添加则通过SubItems对象来实现。第2列为SubItems(1)第3列为SubItems(2)..........
4、在Listview控件第1列只能左对齐,而不能采取其他对齐方式
5、单元格引用:CELLS(行,列)
增加列
listView1.ColumnHeaders.Add
增加行
listView1.ListItems.Add


免责声明:文章转载自《vb listview 的常用操作》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇VUE 进阶Cesium学习笔记(五):3D 模型 (http://blog.csdn.net/umgsoil/article/details/74572877)下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Android中ListView的总结(1)

这ListView真是麻烦,一个小小的FileBrowser废了将近2天。看来自己的功力还需要加强。 做FileBrowser中遇到几个ListView问题总结一下。 1、自定义样式   ListView其实和Asp.net里面的Repeater有点像,但是不同的是项的内容可以用一个layout文件来套用,这个比较有意思,毕竟刚开始研究android姑且叫...

Vb6导出数据到Excel或word文件中

VB6.0报表导出的实现一例,将内容导出到Excel中,或者导出到Word文件中,在平时挺实用,不过代码只测试了下,可以用,核心代码如下: VERSION 5.00Object = "{67397AA1-7FB1-11D0-B148-00A0C922E820}#6.0#0"; "MSADODC.OCX"Object = "{CDE57A40-8B86-11...

listview 设置数组为空

listview.setEmpty(View view); 使用listView或者gridView时,当列表为空时,有时需要显示一个特殊的empty view来提示用户,今日对这个方法进行一下小结,书写的方式有三种: 1.一般情况下,继承ListActivity,只要 <ListView android:id="@id/android:list"...

Android蓝牙开发技术学习总结

Android开发,提供对蓝牙的通讯栈的支持,允许设别和其他的设备进行无线传输数据。应用程序层通过安卓API来调用蓝牙的相关功能,这些API使程序无线连接到蓝牙设备,并拥有P2P或者多端无线连接的特性。 蓝牙的功能: 1、扫描其他蓝牙设备 2、为可配对的蓝牙设备查询蓝牙适配器 3、建立RFCOMM通道(其实就是尼玛的认证) 4、通过服务搜索来链接其他的设备...

VB6.0操作SQL Server——增删改查

http://www.cnblogs.com/Miss-Lin/archive/2012/08/13/2635848.html一、数据录入通过VB向SQL Server数据库中录入数据,可以使用数据绑定控件录入数据与使用SQL语句录入 1.利用数据绑定控件录入数据 使用数据绑定控件录入数据可以运行较少的代码,实现向数据库中录入数据,数据绑定后,由于数据...

在ASP.NET 2.0中使用样式、主题和皮肤

ASP.NET 2.0的主题和皮肤特性使你能够把样式和布局信息存放到一组独立的文件中,总称为主题(Theme)。接下来我们可以把这个主题应用到任何站点,用于改变该站点内的页面和控件的外观和感觉。通过改变主题的内容,而不用改变站点的单个页面,就可以轻易地改变站点的样式。主题也可以在开发者之间共享。 ASP.NET包含了大量的用于定制应用程序的页面和控件的外观...