是的,失去焦点的同时不能得到焦点。
可以在文本框的keypress事件中加上下面的代码:
if nKeyCode=13 &&测试是否按下回车键
...... &&你需要执行的代码
endif
控制焦点的变化, 在text1的lostfocus事件中写 thisform.text2.setfocus
return
如果在text1.keypress代码为:
LPARAMETERS nKeyCode, nShiftAltCtrl
if nKeyCode=13
thisform.text2.setfocus
endif
return
则焦点先到text2后, 又接受回车后失去焦点(我的判断).
列1:thisform.text2.setfocus
return
列2:
thisform.pageframe1.Page1.姓名1.setfocus
return
按你问题补充里说的功能,很简单:
在TEXT1的KEYPRESS事件里写上:
IF nKeycode=13
NODEFAULT
ENDIF
失去焦点和得到焦点是不能同时进行的对啊!!
lostfocus 是无法 keep 住焦点的
Valid 在控件失去焦点之前发生。
举例:text1 输入负数,焦点离不开 text1
text1 的 Valid:
IF !EMPTY(this.Value)
IF this.Value < 0
RETURN .F.
ENDIF
ENDIF