MSFlexGrid控件配合text文本框使用实现编辑内容时,如何让输入错误的那个单元格继续获得焦点?
MSFlexGrid控件配合text2文本框使用实现编辑内容时,text2文本框为不可见的。。。
如何在输入错误的数字 敲回车后那个单元格继续获得焦点?
Private Sub Text2_lostfocus() ‘当敲回车后,检查文本单元格内是否输入了数字’
If Text2.Text <> " " Then
If Not IsNumeric(Text2.Text) Then
MsgBox "请输入数值型数据! ", 48, "提示 "
' text2.SetFocus' Text2.SetFocus事件无效的过程调用或参数,如何让焦点继续停在此文本框内???
Exit Sub
End If
End If
End Sub
Private Sub MSFlexGrid1_KeyPress(KeyAscii As Integer) ‘网格敲回车要自动跳到一下单元格内去的。’
Select Case KeyAscii
Case 13 'ENTER key
If MSFlexGrid1.Col < MSFlexGrid1.Cols - 2 Then '没有这几句代码就不能使得在网格内敲回车单元格不移动.
MSFlexGrid1.Col = MSFlexGrid1.Col + 1
End If
Case 8 'Backspace
If Len(MSFlexGrid1) Then
MSFlexGrid1 = Left$(MSFlexGrid1, Len(MSFlexGrid1) - 1)
End If
Case 27 'ESC
If MSFlexGrid1.Tag > "" Then 'only if not NULL
MSFlexGrid1 = MSFlexGrid1.Tag 'restore original text
End If
Case Else
End Select
End Sub
[解决办法]
试试Validate事件。
IsNumeric 不能保证是数, 试试IsNumeric(“2e2")
[解决办法]
Look: http://download.csdn.net/detail/WallesCai/369462