抱歉这个措辞笨拙的问题。在visual basic中,我有一个提示,要求用户“在A和D之间输入一个字母:”
If ValidChar(chrLetter) Then
Me.lblLetterResult.Text = chrLetter & " is a valid letter"
Else
Me.lblLetterResult.Text = chrLetter & " is not a valid letter"
End If
Function ValidChar(ByVal chrLetter As Char) As Boolean
Dim chrLowChar As Char = "D"
Dim chrHighChar As Char = "A"
If chrLetter >= chrLowChar And chrLetter <= chrHighChar Then
Return True
Else
Return False
End If
End Function
显然这不正确,但我不确定正确的代码应该是什么。如果用户输入字符“A”,则应显示“A是有效数字”。如果用户输入“X”,则应显示“X不是有效数字”。任何帮助表示赞赏!
答案 0 :(得分:5)
难道你不需要改变你的逻辑吗? D
大于A
。
Dim chrLowChar As Char = "A" ' ascii decimal value of 65
Dim chrHighChar As Char = "D" ' ascii decimal value of 68
查看ASCII字符的十进制值以获取有关字符值的更多信息
答案 1 :(得分:-1)
只需创建一个字符串对象“ABCD”。执行string.contains()。如果使用更宽的范围,只需转换为ASCII等效,并使用类似于您的示例的代码