我的datagrid 的最后一列是计算出来的结果,因此按回车键光标走到第四列的时候,自动跳到下一行,datagrid只能输入两行。现在的问题是光标走到第二行的第四列时再接着按回车键,datagrid的第一列就看不着了,后面出现空白的位置。
Private Sub dgdData_KeyDown(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
    If dgdData.Col = 4 Then
        SendKeys "{tab}"
    End If
End IfEnd Sub
怎么能把每一列的位置都固定,按回车建不能发生变化。

解决方案 »

  1.   


    Private Sub Command1_Click()
        DataGrid1.Scroll 0, -1
    End Sub
      

  2.   


    楼主,你这个代码在 Win2k 下测试过吗?不会锁死键盘吗?
      

  3.   

    Private Sub dgdData_KeyDown(KeyCode As Integer, Shift As Integer) 
    If KeyCode = 13 Then 
        If dgdData.Col = 4 And dgdData.Row < 1 Then 
            SendKeys "{tab}" 
        End If 
    End If 
      

  4.   

    datagrid的位置没有变化,是第一列看不着了,就相当于后面的列依次往左移了第一个列的位置
      

  5.   

    这个问题弄了一天我也没找着究竟原因在哪,今天终于知道了。大家肯定都想不到这到底是怎么回事:最后一列的宽度给的太大了,超了datagrid的宽度(但是看不出来).
    "柳暗花明又一村"的前一句是什么