有方法在MSFlexGrid 控件中查找一列或者几列吗??
MSFlexGrid的数据是由 ado 查找的 Recordset ,谢了!!

解决方案 »

  1.   

    if rs.state<>adstateclosed then rs.close
    rs.open"select * from people where name='"&Jesse&"'",conn,3,1找倒那一條過後,去移動,方法其實都是一樣的'--如何更改DataGrid中間第三行Name列的記錄
    Private Sub Command2_Click()
    '--將記錄重新定位在第3條記錄
     Rs.Move 2, 1
     '--更改Recordset的Name字段
     Rs("Name") = "Rose"
     Rs.Update
     
    End Sub
      

  2.   

    MSHFLEXGRID的查找要自己编写,比较麻烦,有空的话,也我将这部分的代码贴出来,给大家参考一下。
      

  3.   

    需要从上到下一条一条的查,直接找到好像没有,这有一个列子,是以CboText为字段,以TxtText为查找内容,查找第0列 至最后一列满足条件的纪录
    Public Sub FindData(MshGrid As MSHFlexGrid, CboText As String, TxtText As String)
        On Error Resume Next
        
        Dim gRows As Integer
        Dim gCols As Integer
        
        For gCols = 0 To MshGrid.Cols - 1
            If Left(Trim(MshGrid.TextMatrix(0, gCols)), Len(CboText)) = CboText Then Exit For
        Next gCols    For gRows = 1 To MshGrid.Rows - 1
            If MshGrid.TextMatrix(gRows, gCols) = TxtText Then Exit For
        Next gRows
        If gRows = MshGrid.Rows Then MsgBox "未找到", vbInformation + vbOKOnly, "提示": Exit Sub
        
        MshGrid.TopRow = gRows
        MshGrid.Row = gRows
        MshGrid.Col = 0
        MshGrid.ColSel = 0
        MshGrid.ColSel = MshGrid.Cols - 1
    End Sub