我是搞单片机的,为了搞调试,不得不用VB开发个工具,但是对VB太不熟了,请大家指点。
问题:
1、做在MsFlexGrid中添加数据的操作,让它的行的数量随着数据数量增加,焦点平时在最后一行;
2、鼠标单击或者双击某一行,焦点转移到此行,可以在当前行进行向下插入操作。
3、焦点行的背景颜色不同于其它行。

解决方案 »

  1.   

    1,with mshflexgrid
        .rows=.rows+1
        .row=.rows-1
        .TopRow = .Row
      end with2,好象不行3,Private Sub flexgrid_EnterCell()  '单击某一单元时,改变该行颜色
      Dim i_Col As Integer
      Dim c_col As Integer
      c_col = Hflexgrid.col
      If c_col > 0 Then
         For i_Col = 0 To Hflexgrid.Cols - 1
             Hflexgrid.col = i_Col
             Hflexgrid.CellBackColor = vbred
         Next i_Col
         Hflexgrid.col = c_col
      End If
    End Sub
    Private Sub flexgrid_LeaveCell()
      '当某一行失去焦点时,改变该行颜色
      Dim i_Col As Integer
      Dim c_col As Integer
      c_col = Hflexgrid.col
      For i_Col = 0 To Hflexgrid.Cols - 1
          Hflexgrid.col = i_Col
          Hflexgrid.CellBackColor = vbWhite
      Next i_Col
      Hflexgrid.col = c_col
    End Sub
      

  2.   

    多谢 Leftie(Leftie)。对第二个问题也有一定启发,我是对VB语法太不熟了,正在“非典”期间,不敢借书、买书,手头无资料。但是有些想法:做插入操作时,行数+1,焦点行之后的数据都向后挪一行,再在焦点行加入要加入的数据。不知这样是否合适?