Form中三个控件的顺序是这样的 txtDriver-->DTPFeeStart-->DTPFeeEnd
我设置了Form的KeyPreview为True
定义了
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys ("{TAB}")
End If
End Sub
因为界面中有DTPicker 控件,好像是不响应KeyPress事件,响应KeyUp事件。所以定义了
Private Sub DTPFeeStart_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
DTPFeeEnd.SetFocus
End If
End Sub
结果郁闷的是在txtDriver中回车以后,鼠标在DTPFeeStart短暂的停留了一下后又马上跳到了DTPFeeEnd上。
小弟我搞不清楚什么道理了,还请各位前辈赐教,谢谢了!
我设置了Form的KeyPreview为True
定义了
Private Sub Form_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
SendKeys ("{TAB}")
End If
End Sub
因为界面中有DTPicker 控件,好像是不响应KeyPress事件,响应KeyUp事件。所以定义了
Private Sub DTPFeeStart_KeyUp(KeyCode As Integer, Shift As Integer)
If KeyCode = 13 Then
DTPFeeEnd.SetFocus
End If
End Sub
结果郁闷的是在txtDriver中回车以后,鼠标在DTPFeeStart短暂的停留了一下后又马上跳到了DTPFeeEnd上。
小弟我搞不清楚什么道理了,还请各位前辈赐教,谢谢了!
解决方案 »
- vsFlexGrid 进入编辑状态 按任意方向键,焦点自动跳转到当前列的第一格?
- VB前途渺茫?还是常青树?
- 各位大侠,来急救啊,在线等啊,最后的分数了
- 把照片信息存在了XML文件里,如何取出来?进来看看。因为这文件不是我生成的。
- 一份价钱一分货——如何加载多个winsock?
- 寻找一个控件(带源代码)!!!!!!!!!
- 怎么用VB判断时间是否漏洞
- 使用savepicture保存桌面,但如果使用了scale定义屏幕像素后,就会报错
- 请教CommonDialog打开文件,如果文件不存在,如何判断?
- vb 用WebBrowser打开网页
- VB ADO如何获得SQL SERVER 返回的两个以上记录集?请指教
- 关于软件的语言转换的问题?
然后
If KeyCode = 13 Then
DTPFeeEnd.SetFocus
End If
後.又執行了這個:
If KeyAscii = 13 Then
SendKeys ("{TAB}")
End If
If KeyCode = 13 Then
SendKeys "{TAB}"' Select Case Me.ActiveControl.Name
' Case "txtDriver"
' DTPFeeStart.SetFocus
' Case "DTPFeeStart"
' DTPFeeEnd.SetFocus
' End Select End If
End Sub注意,在没有打补丁的 Win2k 系统中,在回车后发送 Tab 会造成键盘锁死。你可以用下面注释掉的代码来替代。或者使用 API 发送键码消息。
不管怎么样,还是谢谢楼上两位的回答了。