加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

VB ListView控件各种操作详解

发布时间:2020-12-17 00:16:46 所属栏目:大数据 来源:网络整理
导读:添加listview控件: 按菜单依次操作:【工程】--【部件】,勾
添加listview控件:
按菜单依次操作:
【工程】-->【部件】,勾选【Microsoft Windows Common Controls 6.0】,【确定】即可看到

Private Sub Form_Load()
    'ListView1.SmallIcons = ImageList1.Object '把ImageList1图标列表控件绑定到 ListView1列表控件中来。 
    ListView1.ListItems.Clear               '清空列表
    ListView1.ColumnHeaders.Clear           '清空列表头
    ListView1.View = lvwReport              '设置列表显示方式
    ListView1.GridLines = True              '显示网络线
    ListView1.LabelEdit = lvwManual         '禁止标签编辑
    ListView1.FullRowSelect = True          '选择整行

    ListView1.ColumnHeaders.Add,"ID",500 '给列表中添加列名
    ListView1.ColumnHeaders.Add,255)">"本地 IP",1500
    ListView1.ColumnHeaders.Add,255)">"本地端口",1200
    ListView1.ColumnHeaders.Add,255)">"协议",550
    ListView1.ColumnHeaders.Add,255)">"远程 IP",255)">"远程端口",900
    ListView1.ColumnHeaders.Add,255)">"当前状态",255)">"连接时间",900
    '-------------------------------------------------------
    Dim X
    X = ListView1.ListItems.Count + 1
    ListView1.ListItems.Add,X
    ListView1.ListItems(X).SubItems(1) = "00:00:00"
    ListView1.ListItems(X).SubItems(2) = "2008-01-01"
    ListView1.ListItems(X).SubItems(3) = "(无)"
    '-------------------------------------------------------
    ListView1.ListItems.Clear               '清空列表
    ListView1.ListItems.Add,255)">"1"
    'ListView1.ListItems.Add,"1",1 '添加图标 后面那个1是ImageList1控件中的图标索引号
    ListView1.ListItems(1).SubItems(1) = "00:00:00"
    ListView1.ListItems(1).SubItems(2) = "2008-01-01"
    ListView1.ListItems(1).SubItems(3) = "(无)"

    ListView1.ListItems.Add,255)">"2"
    ListView1.ListItems(2).SubItems(1) = "00:00:01"
    ListView1.ListItems(2).SubItems(2) = "2008-01-01"
    ListView1.ListItems(2).SubItems(3) = '-------------------------------------------------------
    '下列的属性也可以 单击控件右键->属性 进行设置。
    ListView1.View = lvwReport              '设置显示方式为列表
    ListView1.AllowColumnReorder = True     '对行进行程序排列,用鼠标进行排列
    ListView1.Arrange = lvwAutoLeft         '图标横排列
    ListView1.Arrange = lvwAutoTop          '图标竖排列
    ListView1.FlatScrollBar = False         '显示滚动条
    ListView1.FlatScrollBar = '隐藏滚动条
    ListView1.FullRowSelect = '选择整行
    ListView1.LabelEdit = lvwManual         '禁止标签编辑
    ListView1.GridLines = '显示网络线
    ListView1.LabelWrap = '图标可以换行
    ListView1.MultiSelect = True            '可以选择多个项目
    ListView1.PictureAlignment = lvwTopLeft '图片对齐方式是左顶部,其他有右顶部(1)、左底部(2)、右底部(3)、居中(4)、平铺(5)
    ListView1.Checkboxes = True             '显示复选框
    'ListView1.DropHighlight = ListView1.ListItems.Item(2) '显示系统颜色

End Sub

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

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

设置宽度:

ListView1.ColumnHeaders.Add,255)">"备注",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 Integer For i = 1 To ListView1.ListItems.Count If 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

右键菜单:

Sub ListView1_MouseDown(Single) If Button = vbRightButton Then PopupMenu CommandLst '按下鼠标右键 显示菜单 Sub

当前选中判断:

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

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

ListView.ListItems(i).Selected = True '选中第i行 ListView.ListItems(i).Selected = False '选中第i行
设置ListView item项颜色
ListView1.ListItems(i).ForeColor = vbRed ListView1.ListItems(i).ListSubItems.Item(1).ForeColor = vbRed ListView1.ListItems(i).ListSubItems.Item(2).ForeColor = vbRed

下面是一个带图标的示例源码:
ListView_demo.rar

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读