如何点击MSFlexGrid单元格,让这个单元格的所在行高亮显示

解决方案 »

  1.   

    Option ExplicitDim lngOldRow As Long
    Private Sub Form_Load()
        Dim i As Long
        
        MSFlexGrid1.Rows = 10: MSFlexGrid1.Cols = 5
        MSFlexGrid1.FixedCols = 0
        MSFlexGrid1.FixedRows = 0
        For i = 0 To MSFlexGrid1.Rows - 1
            MSFlexGrid1.TextMatrix(i, 1) = "aaaa" & i
        Next    MSFlexGrid1.SelectionMode = flexSelectionByRow
    End Sub
    Private Sub MSFlexGrid1_SelChange()
        MSFlexGrid1.Redraw = False
        Dim i As Long, lngNewRow As Long
        
        lngNewRow = MSFlexGrid1.Row
        MSFlexGrid1.Row = lngOldRow
        For i = 1 To MSFlexGrid1.Cols - 1
            MSFlexGrid1.Col = i
            MSFlexGrid1.CellBackColor = vbWhite
        Next
        
        MSFlexGrid1.Row = lngNewRow
        For i = 1 To MSFlexGrid1.Cols - 1
            MSFlexGrid1.Col = i
            MSFlexGrid1.CellBackColor = vbBlue
        Next
        MSFlexGrid1.Redraw = True
        
        lngOldRow = lngNewRow
    End Sub