当user第二次在文本框按回车时会提示"Type mismatch", 查了很久都不知所以然.Private Sub PPID_Text_KeyPress(KeyAscii As Integer) Dim Retu As Long
Dim PPID As String
'KeyAscii = AscW(UCase(ChrW(KeyAscii)))
On Error GoTo Input_Error
If KeyAscii = vbKeyReturn Then
If Len(PPID_Text.Text) > PPID_LENGTH Then
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
MsgBox "This PPID is wrong!"
PPID_Text.Text = ""
PPID_Text.SetFocus
Exit Sub
End If
If Not Checking_Charactor(PPID_Text.Text) Then
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
MsgBox "This PPID include wrong word!"
PPID_Text.Text = ""
PPID_Text.SetFocus
Exit Sub
End If
PPID = UCase(Trim(PPID_Text.Text))
If RowCount = 0 Then
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
PPID_Text.Text = ""
TrackCode_Text.SetFocus
Exit Sub
End If
Select Case Len(PPID)
Case PART_NUMBER_LENGTH:
List_PPID_VER PPID, "A00"
PPID_Text.Text = ""
PPID_Text.SetFocus
Case COA_PART_LENGTH:
If Left(PPID, 1) = "0" Then
Version_Text.SetFocus
Exit Sub
Else
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
MsgBox "Scanning error!"
PPID_Text.Text = ""
PPID_Text.SetFocus
End If
Case TRACKCODE_LENGTH:
If PPID <> TrackCode Then
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
MsgBox "TrackCode error, please rescan!"
PPID_Text.Text = ""
PPID_Text.SetFocus
Exit Sub
End If
'If Not SentFlag Then Call OK_Click
If Not SentFlag Then
If Not Checking_Record Then Exit Sub
Write_PPID
End If
If Not Send_Control_Centre Then Exit Sub
Save_All_PPID
Clear_Screen
TrackCode_Text.Text = ""
TrackCode_Text.SetFocus
Case PPID_LENGTH:
List_PPID_VER PPID, "A00"
PPID_Text.Text = ""
PPID_Text.SetFocus
Case Else:
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
MsgBox "Scanning error!"
PPID_Text.Text = ""
PPID_Text.SetFocus
End Select
End If
Exit Sub
Input_Error:
Log_Error Me.Name, "PPID_Text_KeyPress()", Err.Number, Err.Description Resume NextEnd Sub
Dim PPID As String
'KeyAscii = AscW(UCase(ChrW(KeyAscii)))
On Error GoTo Input_Error
If KeyAscii = vbKeyReturn Then
If Len(PPID_Text.Text) > PPID_LENGTH Then
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
MsgBox "This PPID is wrong!"
PPID_Text.Text = ""
PPID_Text.SetFocus
Exit Sub
End If
If Not Checking_Charactor(PPID_Text.Text) Then
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
MsgBox "This PPID include wrong word!"
PPID_Text.Text = ""
PPID_Text.SetFocus
Exit Sub
End If
PPID = UCase(Trim(PPID_Text.Text))
If RowCount = 0 Then
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
PPID_Text.Text = ""
TrackCode_Text.SetFocus
Exit Sub
End If
Select Case Len(PPID)
Case PART_NUMBER_LENGTH:
List_PPID_VER PPID, "A00"
PPID_Text.Text = ""
PPID_Text.SetFocus
Case COA_PART_LENGTH:
If Left(PPID, 1) = "0" Then
Version_Text.SetFocus
Exit Sub
Else
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
MsgBox "Scanning error!"
PPID_Text.Text = ""
PPID_Text.SetFocus
End If
Case TRACKCODE_LENGTH:
If PPID <> TrackCode Then
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
MsgBox "TrackCode error, please rescan!"
PPID_Text.Text = ""
PPID_Text.SetFocus
Exit Sub
End If
'If Not SentFlag Then Call OK_Click
If Not SentFlag Then
If Not Checking_Record Then Exit Sub
Write_PPID
End If
If Not Send_Control_Centre Then Exit Sub
Save_All_PPID
Clear_Screen
TrackCode_Text.Text = ""
TrackCode_Text.SetFocus
Case PPID_LENGTH:
List_PPID_VER PPID, "A00"
PPID_Text.Text = ""
PPID_Text.SetFocus
Case Else:
Retu = sndPlaySound(App.Path & "\wrong.wav", 1)
MsgBox "Scanning error!"
PPID_Text.Text = ""
PPID_Text.SetFocus
End Select
End If
Exit Sub
Input_Error:
Log_Error Me.Name, "PPID_Text_KeyPress()", Err.Number, Err.Description Resume NextEnd Sub
解决方案 »
- 请问vc里如下的语句,在vb里应该怎么写?
- 在vb6.0中,如何获取datagrid1选中的是哪行?谢谢!
- ★★★★★究竟谁是垃圾,CSDN有史以来最有影响力的两大高手开始辩论★★★★★--上海交大的migthline和亡灵法师alienbat
- 急急急,在线等待!关于TextBox换行的问题!
- 急!datagrid,adodc链接.dbf得文件怎样做?
- 在MDI窗体内,调用非MDI子窗体,怎么调用?
- 请高手指点vb编写加密程序
- 用多个串口控件不间断接收数据,应该用什么方法啊?
- 非常急,水晶报表的数据为什么没办法刷新?????
- VB的入门问题
- 在線求救!!水晶報表要求一式三份。但列印出的三份內容相同頁碼不一樣。
- 双节散分!王哥!我已经南下到达目的地!
*****************************************************************************
欢迎使用CSDN论坛阅读器 : CSDN Reader(附全部源代码)
http://www.cnblogs.com/feiyun0112/archive/2006/09/20/509783.html
这里加上行号就知道哪里出错了