下面是得到记录并显示的过程,前提是你要设置listview的属性,包括column headers等等. Dim rs As New ADODB.Recordset Dim sql As String Dim MItem As ListItem ListView1.ListItems.Clear sql = "select * from tb_student_info " rs.Open sql, cn, adOpenKeyset, adLockReadOnly If rs.EOF Then Else rs.MoveFirst Do Until rs.EOF Set MItem = ListView1.ListItems.Add(, , rs!ID) MItem.SubItems(1) = rs!Name MItem.SubItems(2) = rs!sex rs.MoveNext Loop rs.Close: Set rs = Nothing End If
Public Sub RecordSetToLVHeader(RSName As ADODB.Recordset, LName As ListView) '从记录集到列表头 On Error Resume Next Dim I As Integer LName.ColumnHeaders.Clear RSName.MoveFirst For I = 0 To RSName.Fields.Count - 1 LName.ColumnHeaders.Add , , RSName.Fields(I).Name Next I End SubPublic Sub RecordSetToListView(RSName As ADODB.Recordset, LName As ListView) '指定的 On Error Resume Next Dim I As Integer Dim J As Integer Dim K As Integer LName.Sorted = False RSName.MoveFirst For I = 1 To RSName.RecordCount LName.ListItems.Add , , RSName.Fields(0).Value For J = 1 To RSName.Fields.Count - 1 If IsNull(RSName.Fields(J).Value) Then LName.ListItems(I).SubItems(J) = "" Else LName.ListItems(I).SubItems(J) = RSName.Fields(J).Value End If Next J RSName.MoveNext Next I LName.Refresh End Sub
lvListView.ColumnHeaders.Clear
lvListView.ListItems.Clear
lvListView.ColumnHeaders.Add 1, "a", "标题", lvListView.Width / 2
lvListView.ColumnHeaders.Add 2, "b", "分类", lvListView.Width / 6
Set itemx = lvListView.ListItems.Add(, , "Name")
itemx.SubItems(1) = "city"
lvListView.View = lvwReport
下面是得到记录并显示的过程,前提是你要设置listview的属性,包括column headers等等.
Dim rs As New ADODB.Recordset
Dim sql As String
Dim MItem As ListItem
ListView1.ListItems.Clear
sql = "select * from tb_student_info "
rs.Open sql, cn, adOpenKeyset, adLockReadOnly
If rs.EOF Then
Else
rs.MoveFirst
Do Until rs.EOF
Set MItem = ListView1.ListItems.Add(, , rs!ID)
MItem.SubItems(1) = rs!Name
MItem.SubItems(2) = rs!sex
rs.MoveNext
Loop
rs.Close: Set rs = Nothing
End If
'从记录集到列表头
On Error Resume Next
Dim I As Integer
LName.ColumnHeaders.Clear
RSName.MoveFirst
For I = 0 To RSName.Fields.Count - 1
LName.ColumnHeaders.Add , , RSName.Fields(I).Name
Next I
End SubPublic Sub RecordSetToListView(RSName As ADODB.Recordset, LName As ListView)
'指定的
On Error Resume Next
Dim I As Integer
Dim J As Integer
Dim K As Integer
LName.Sorted = False
RSName.MoveFirst
For I = 1 To RSName.RecordCount
LName.ListItems.Add , , RSName.Fields(0).Value
For J = 1 To RSName.Fields.Count - 1
If IsNull(RSName.Fields(J).Value) Then
LName.ListItems(I).SubItems(J) = ""
Else
LName.ListItems(I).SubItems(J) = RSName.Fields(J).Value
End If
Next J
RSName.MoveNext
Next I
LName.Refresh
End Sub