VB 6驗證輸入中文字符

 Private Sub Text7_Change()
Dim gbascii
If Len(Trim(Text7.Text)) > 0 Then
If Asc(Text7.Text) < 0 Then
    gbascii = AscB(StrConv(Text7.Text, vbFromUnicode))     '區位碼在16區之後的爲漢字
    If gbascii - 160 > 15 Then
        'MsgBox "是漢字", vbOKOnly + vbExclamation, "警告"
        Text1.Text = Text7.Text
    Else
        MsgBox "是全角符號,請刪除!", vbOKOnly + vbExclamation, "警告"
        Text7.SetFocus
    Text7.Text = ""
    End If
Else
    MsgBox "是半角英文或數字,請刪除!", vbOKOnly + vbExclamation, "警告"
    Text7.SetFocus
    Text7.Text = ""
End If
Else
    MsgBox "內容不能空,請輸入漢字!", vbOKOnly + vbExclamation, "警告"
    Text7.SetFocus
     Text7.Text = "張"
End If
End Sub

Private Sub Text7_LostFocus()
Dim gbascii
If Len(Trim(Text7.Text)) > 0 Then
If Asc(Text7.Text) < 0 Then
    gbascii = AscB(StrConv(Text7.Text, vbFromUnicode))

    '區位碼在16區之後的爲漢字
    If gbascii - 160 > 15 Then
        ' 漢字
        Text1.Text = Text7.Text
    Else
        MsgBox "是全角符號,請刪除後輸入漢字!", vbOKOnly + vbExclamation, "警告"
        Text7.SetFocus
        Text7.Text = ""
    End If
Else
    MsgBox "是半角英文或數字,請刪除後輸入漢字!", vbOKOnly + vbExclamation, "警告"
    Text7.SetFocus
    Text7.Text = ""
End If
Else
    MsgBox "內容不能空,請輸入漢字!", vbOKOnly + vbExclamation, "警告"
    Text7.SetFocus
     Text7.Text = "張"
End If
End Sub
 

 

使用說明 :Text7是文本控件名稱,全部替換改成實際的就可以,測試通過 。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章