一个textbox控件,与mshflexgrid
光标在textbox控件上,按键盘上的光标上下键,移动mshflexgrid行,移动的时候为何只选定mshflexgrid的一个单元格,如何让它整行选定,请高手帮帮忙
Private Sub textbox_KeyDown(KeyCode As Integer, Shift As Integer)
With mshflexgrid
        Select Case KeyCode
            Case 40
                 If .row < .rows - 1 Then
                    .row = .row + 1
                    .TopRow = .row
                End If
            Case 38
                If .row > 1 Then
                    .row = .row - 1
                    .TopRow = .row
                End If
            Case 34 '上页
                If .rows - .TopRow > 10 Then
                    .TopRow = .TopRow + 10
                    .row = .TopRow
                End If
            
            Case 33 '下页
                If .TopRow < 10 Then
                    .TopRow = 1
                    .row = .TopRow
                Else
                    If .rows - .TopRow > 10 Then
                        .TopRow = .TopRow - 10
                        .row = .TopRow
                    End If
                End If
        End Select
    End With
End Sub

解决方案 »

  1.   

    mshflexgrid.SelectionMode = flexSelectionByRow
      

  2.   

    初始化中用mshflexgrid.SelectionMode = flexSelectionByRow在RowColChange事件中直接编辑
    text1.text=mshflexgrid.textmatrix(.row,1)等等
      

  3.   

    我也是用mshflexgrid.SelectionMode = flexSelectionByRow就可以了啊
    你试试把窗体上的这个mshflexgrid删除,重新放一个上去,可能是你别的什么属性影响到它了
      

  4.   

    你们可能都没有看明白
    光标在textbox控件上,按键盘上的光标上下键,要求选定mshflexgrid的一整行
      

  5.   

    这样的话,只要一个单元格获得焦点整行就高亮了Private Sub hflexgrid_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 = &HFFFFC0
         Next i_Col
         Hflexgrid.Col = c_col
      End If
    End SubPrivate Sub hflexgrid_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
      

  6.   

    用WebBrowser做浏览器,如何解决网站弹出窗体?
    我在窗体上放了一个WebBrowser控件,就可以浏览网站了,但是网站有一些弹出的窗体,却使用了系统默认的浏览器,既使用的IE作为弹出窗体的浏览器了。