msflexgrid里捕捉方向键的问题,急寻高手指点!!!!!!!!
Public Sub MSFlexGrid4_KeyDown(KeyCode As Integer, Shift As Integer)
' Save the position of the grids Row and Col for later:
MsgBox KeyCode
' key " LEFT "
If KeyCode = 97 And MSFlexGrid4.Col > 1 Then
MSFlexGrid4.Col = MSFlexGrid4.Col - 1
End If
' key " RIGHT "
If KeyCode = 99 And MSFlexGrid4.Col < MSFlexGrid4.Cols - 1 Then
MSFlexGrid4.Col = MSFlexGrid4.Col + 1
End If
' key " UP "
If KeyCode = 101 And MSFlexGrid4.Row > 1 Then
MSFlexGrid4.Row = MSFlexGrid4.Row - 1
End If
' key " DOWN "
If KeyCode = 98 And MSFlexGrid4.Row < MSFlexGrid4.Rows - 1 Then
MSFlexGrid4.Row = MSFlexGrid4.Row + 1
End If
end sub
为什么捕捉不到“上下左右”键呢?其余的键都可以的
郁闷,请大侠指点!!!!
[解决办法]
写这些代码干什么?
msflexgrid自带这个功能啊
如果想捕捉方向键,可以用subclass
顺便还可以给它添加滚轮的功能。
[解决办法]
怎么会不变呢?
你加上这句试试,按方向键的时候行列是跟着变化的
Private Sub MSFlexGrid1_RowColChange()
Debug.Print MSFlexGrid1.Row; MSFlexGrid1.Col
End Sub
[解决办法]
好像MS的这个控件没有这个功能,表格中无法捕捉到方向键的值
可以得用API函数来实现
[解决办法]
方向键的值应该是。。。。
KeyCode = 37 '左
KeyCode = 38 '上
KeyCode = 39 '右
KeyCode = 40 '下
呵呵,,不知道在“MSFlexGrid4_KeyDown”事件中有没有用。。
你可在事件中写“Debug.Print KeyCode”试试。。
[解决办法]
试过了捕捉不到 ,但是mshflexgrid可以捕捉到,楼住可以试试