小弟刚刚学了VB,用的编译器是VB6.0,想用listview 控件来显示数据库中的一张表的内容,代码如下:
   ListView1.GridLines = True
   ListView1.View = lvwReport
   
   Dim ListX As ListItem
   Dim ListSubX As ListSubItem
   Dim ColumnX As ColumnHeader
   
   Dim i As Integer
   Dim headtext(14) As String
   
   headtext(0) = "轧辊号": headtext(1) = "机架号": headtext(2) = "轧辊位置": headtext(3) = "当前使用次数"
   headtext(4) = "凸度": headtext(5) = "轧辊直径": headtext(6) = "本次轧制重量": headtext(7) = "本次轧制长度"
   headtext(8) = "轧制总重量": headtext(9) = "轧制总长度": headtext(10) = "轧辊状态": headtext(11) = "封闭"
   headtext(12) = "递进": headtext(13) = "缺陷"
   
   For i = 0 To rs.Fields.Count - 1
      Set ColumnX = ListView1.ColumnHeaders.Add      ColumnX.Text = headtext(i)
      ColumnX.Width = ListView1.Width / rs.Fields.Count
   Next i
   Do Until rs.EOF
      Set ListX = ListView1.ListItems.Add      ListX.Text = rs.Fields(0).Value
      For i = 1 To rs.Fields.Count - 1
      ListX.SubItems(i) = rs.Fields(i).Value
   Next i
   rs.MoveNext
   Loop
编译老是出错,红色部分总是提示类型不匹配,这是怎么回事啊?多谢了

解决方案 »

  1.   

    ListView1.ColumnHeaders.Add是一个方法,你把它拿去赋值?http://www.360doc.com/content/09/0728/11/19147_4505438.shtml随手一搜,请养成善用搜索的习惯。看你这代码,连基础VB语法都没弄懂……
      

  2.   


    Set ColumnX = ListView1.ColumnHeaders.Add(headtext(i))Set ListX = ListView1.ListItems.Add(rs.Fields(0).Value)
      

  3.   

      For i = 0 To rs.Fields.Count - 1
      Set ColumnX = ListView1.ColumnHeaders.Add :ColumnX.Text = headtext(i)
      ColumnX.Width = ListView1.Width / rs.Fields.Count
      Next i
      Do Until rs.EOF
      Set ListX = ListView1.ListItems.Add :ListX.Text = rs.Fields(0).Value
      For i = 1 To rs.Fields.Count - 1
      ListX.SubItems(i) = rs.Fields(i).Value
      Next i
      rs.MoveNext
      Loop
    感觉应该是把两句代码写到一行,所以出错了。几个“:”或者分成两行代码试试。