谢!

解决方案 »

  1.   

    Dim I As Integer
    Private Sub MSFlexGrid_EnterCell()
                      '指定列数
                        For I = 42 To 0 Step -1
                              MSFlexGrid.Col = I
                                   '设置颜色
                              MSFlexGrid.CellBackColor = &HC0E0FF
                         Next
    End Sub
    Private Sub MSFlexGrid_LeaveCell()
                             '指定列数
                        For I = 42 To 0 Step -1
                              MSFlexGrid.Col = I
                                '设置颜色
                              MSFlexGrid.CellBackColor = &H80000005
                         Next
    End Sub
    '以上方式在列数多的时候会效果不是很好,反应会有迟缓.请哪位高手有更好的方法贴出来
      

  2.   

    Private Sub Form_Load()
    MSFlexGrid1.Rows = 5
    MSFlexGrid1.Cols = 7
    MSFlexGrid1.FixedCols = 0MSFlexGrid1.ColWidth(0) = 0
    MSFlexGrid1.SelectionMode = flexSelectionByRow
    End Sub这样就能实现你要的看到你说的功能
      

  3.   

    to :
    tztz520(宏宏)
    这个方式很方便,但应该怎样将选取的行保留住深色呢?
    请教...
      

  4.   

    Private Sub hflexgrid_EnterCell()
       
        If Hflexgrid.Row = 0 Then Exit Sub
        '将当前行改变颜色
        Dim i As Integer
        Dim iCol As Integer
        iCol = Hflexgrid.Col
        For i = 1 To Hflexgrid.Cols
            Hflexgrid.Col = i - 1
            Hflexgrid.CellBackColor = &HFFFFC0
        Next i
        Hflexgrid.Col = iCol
        
    End SubPrivate Sub hflexgrid_LeaveCell()    If Hflexgrid.Row = 0 Then Exit Sub
        '将当前行改变颜色
        Dim i As Integer
        Dim iCol As Integer
        iCol = Hflexgrid.Col
        For i = 1 To Hflexgrid.Cols
            Hflexgrid.Col = i - 1
            Hflexgrid.CellBackColor = vbWhite
        Next i
        Hflexgrid.Col = iCol
        
    End Sub
      

  5.   

    msflexgrid的selectionmode属性设置为1-flexselectionbyrow,然后backcolorsel设置为你要的颜色。ok!