VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > Python基础教程 >
  • listview常用属性、事件、方法

常用属性:
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 透明
1 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 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
 
例二
 
Private Sub UserForm_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)
 
Next i
 
End 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
 
 
————————————————
版权声明:本文为CSDN博主「xiaohanyi1989」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/xiaohanyi1989/article/details/7639060

相关教程