请教各位一个严重的问题,为什么用MSHFlexGrid比ListView1快很多,我用ListView1时查询数据库5000行数据要10秒,试用MSHFlexGrid时不到1秒,能否用ListView1达到MSHFlexGrid的速度,望请各位指导、修改,因为我全部用ListView1。谢谢用ListView1
ListView1.ListItems.Clear
 Call OpenCNN
    
  If Len(Combo1.Text) = 0 And Len(Combo2.Text) = 0 Then
sql = "SELECT 商品表.供应商id, 检验单.ID,检验单.厂家批次,检验单.供应商属性, 检验单.送货单号, 检验单.检验人员,商品表.物料名称,检验单.ROHS测试批,检验单.ROHS不合格批,检验单.免检批,检验单.不测试批,检验单.进仓批,检验单.不合格批,检验单.退货批,检验单.回用批,检验单.反馈批,检验单.级别,检验单.检验结果,检验单.ROHS结论,检验单.ROHS属性,检验单.不合格处理,检验单.不合格数, 检验单.不合格内容,商品表.物料编码, 商品表.型号规格, 供应商表.供应商名称, 商品表.类别名称, 检验单.数量, 检验单.送货日期 FROM (商品表 INNER JOIN 检验单 ON 商品表.供应商id = 检验单.物料名称) INNER JOIN 供应商表 ON 检验单.供应商名称 = 供应商表.id WHERE 检验单.送货日期 >= '" & DTPicker1 & "' and 检验单.送货日期 <= '" & DTPicker2 & "' "   
 End If
  Rst.Open sql, CNN, 1, 3
  On Error Resume Next
  ProgressBar1.Max = Rst.RecordCount
  For i = 1 To Rst.RecordCount
  Set LV1 = ListView1.ListItems.Add
  LV1.Text = Rst.Fields("id")
  LV1.SubItems(1) = Rst.Fields("送货日期")
  LV1.SubItems(2) = Rst.Fields("送货单号")
  LV1.SubItems(3) = Rst.Fields("级别")
  LV1.SubItems(4) = Rst.Fields("数量")
  LV1.SubItems(5) = Rst.Fields("不合格数")
  LV1.SubItems(6) = LV1.SubItems(4) - LV1.SubItems(5)
  。用MSHFlexGrid:
MSH.Clear
  MSH.Cols = 2
  MSH.Rows = 2
 Call OpenCNN
  If Len(Combo1.Text) = 0 And Len(Combo2.Text) = 0 Then
sql = "SELECT 检验单.ID, 检验单.送货日期,检验单.送货单号, 检验单.级别, 检验单.数量,检验单.不合格数, 检验单.不合格内容,检验单.检验结果,检验单.ROHS结论,商品表.物料编码, 商品表.型号规格, 供应商表.供应商名称, 商品表.供应商id, 检验单.厂家批次,检验单.供应商属性, 检验单.检验人员,商品表.物料名称,检验单.ROHS测试批,检验单.ROHS不合格批,检验单.免检批,检验单.不测试批,检验单.进仓批,检验单.不合格批,检验单.退货批,检验单.回用批,检验单.反馈批,检验单.ROHS属性,检验单.不合格处理,商品表.类别名称 FROM (商品表 INNER JOIN 检验单 ON 商品表.供应商id = 检验单.物料名称) INNER JOIN 供应商表 ON 检验单.供应商名称 = 供应商表.id WHERE 检验单.送货日期 >= '" & DTPicker1 & "' and 检验单.送货日期 <= '" & DTPicker2 & "' "
  End If
  Rst.Open sql, CNN, 1, 3
  On Error Resume Next
  ProgressBar1.Max = Rst.RecordCount
  ' For i = 1 To MSH.Container
  Set MSH.DataSource = Rst
  Label9.Caption = "共 " & Rst.RecordCount & " 条记录"
  MSH.ColWidth(0) = 0
  For i = 0 To Rst.Fields.Count - 1
  MSH.ColWidth(i + 1) = Len(Rst.Fields(i).Name) * 200 + 400
  Rst.Close