【Access示例】加载ListView控件的通用函数-will.miao
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-窗体/数据页


【Access示例】加载ListView控件的通用函数

发表时间:2014/3/23 8:21:43 评论(2) 浏览(8056)  评论 | 加入收藏 | 复制
   
摘 要:加载ListView控件的通用函数
正 文:

ListView我个人认为并没有我们平时用的数据表窗体之类的实用,但有些情况下需要用到他,这里给大家一个用来加载ListVie控件的通用函数

'============================================
'函数名称: BuildLVW
'功能描述: 加载ListView控件
'使用示例: 例:BuildLVW "tbdata", Me.ListView1.Object
'============================================

Public Function BuildLVW(sTable As String, oListView As ListView)

    On Error GoTo Err_Handler
    Dim chColHead As ColumnHeader
    Dim itmNewLine As ListItem
    Dim intIndex As Integer
    Dim intCount2 As Integer
    Dim intTotCount As Integer
    Dim rsListView As DAO.Recordset
    Set rsListView = CurrentDb.OpenRecordset("Select * From " & sTable & " ", dbReadOnly)
    rsListView.MoveFirst
    rsListView.MoveLast

    With rsListView
        '清除....
        oListView.ColumnHeaders.Clear
        oListView.ListItems.Clear
        rsListView.MoveFirst
        For intIndex = 0 To .Fields.Count - 1
            Set chColHead = oListView.ColumnHeaders.Add(, , rsListView(intIndex).Name) '加标题
            oListView.ColumnHeaders.Item(intIndex + 1).Width = 2000    '调整尺寸...
        Next intIndex

        If .EOF = False Then
            intTotCount = rsListView.RecordCount
            For intIndex = 1 To intTotCount
                If IsNull(rsListView(0).Value) = False Then '加入第一列数据
                    If IsNumeric(rsListView(0).Value) Then
                        Set itmNewLine = oListView.ListItems.Add(, , Str(rsListView(0).Value))
                    Else
                        Set itmNewLine = oListView.ListItems.Add(, , rsListView(0).Value)
                    End If
                 
                    For intCount2 = 1 To .Fields.Count - 1
                        If IsNull(rsListView(intCount2).Value) = False Then
                            itmNewLine.SubItems(intCount2) = rsListView(intCount2).Value
                        Else
                            itmNewLine.SubItems(intCount2) = ""
                        End If
                    Next intCount2
                    .MoveNext
                Else
                    Set itmNewLine = oListView.ListItems.Add(, , "")
                End If
            Next intIndex
            oListView.GridLines = True
        Else
            oListView.ListItems.Clear
            oListView.GridLines = False
        End If
    End With
ExitHere:
    Set rsListView = Nothing
    Exit Function
Err_Handler:

    MsgBox Err.Description, vbCritical
    Resume ExitHere
End Function


附   件:

点击附件下载


Access软件网交流QQ群(群号:198465573)
 
 相关文章
采用Treeview和ListView控件的简单客户管理示例  【fan0217  2008/9/25】
用listview做的控制面板  【胡永炽  2011/1/13】
ListView 控件  【Aaron  2011/7/17】
【Listview教程07】自定义格式  【纵云梯  2012/5/28】
旧平台过渡到新平台后listview控件不可用,发生mousemo...  【陈波  2013/11/25】
listView多种功能示例  【杜超-2号  2014/3/22】
常见问答
技术分类
相关资源
文章搜索
关于作者

will.miao

文章分类

文章存档

友情链接