本帖最后由 lzxbl05 于 2010-01-25 12:01:31 编辑

解决方案 »

  1.   

    你选中行的代码是怎么实现的?
    要选中某行很简单啊,直接   
    MSHFlexGrid2.SetFocus
    MSHFlexGrid2.Row = 行数  就是了
      

  2.   

    确实是没多大必要,小弟发此帖的目的是2个:找出原因和解决这小BUG,呵呵
      

  3.   


    我用这个来选中行Private Sub RowColor2(i As Long, q As Long)
    Dim n As Long
    With MSHFlexGrid2
    For n = 1 To .Cols - 1
    .row = i
    .col = n
    .CellBackColor = &HC0FFFF
    If q > 0 And i <> q Then
    .row = q
    .CellBackColor = &HFFFFFF
    End If
    Next n
    q = i
    .row = i
    End With
    End Sub
      
    Private Sub MSHFlexGrid2_Click()
    Call RowColor2(MSHFlexGrid2.row, q)
    End Sub
    不过应该是和这个没有关系,因为我之前没有用这代码,就用控件自带的点击选中,也会出现这样的情况,第一条记录添加后,我点这格,它会选中另一格
      

  4.   

    Private Sub MSHFlexGrid2_Click()
       datapos = MSHFlexGrid2.RowSel - 1
       rs.MoveFirst
       rs.Move datapos
       Call PaintBlue
    End Sub
     
    Private Sub PaintBlue()
       MSHFlexGrid2.Row = datapos + 1
       For k = 0 To 3
          MSHFlexGrid2.Col = k
          MSHFlexGrid2.CellForeColor = QBColor(15)
          MSHFlexGrid2.CellBackColor = QBColor(1)
       Next k
    End Sub
      

  5.   

    有问题的话再在这个帖来发问吧 Mshflexgrid + ADODB 我也算熟了