嘿,我想这样做,以便每当我点击按钮,如果textbox1包含除数字以外的任何内容,它将在消息框中显示“您只能输入数字” 我无法弄清楚如何正确使用Asc函数
Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
If Asc(TextBox1.Text) < 48 Or Asc(TextBox1.Text) > 57 Then
TextBox1.Text = True
MessageBox.Show("You can only enter numbers")
End If
答案 0 :(得分:1)
即使必须使用TextBox,也不需要Asc
功能。使用Integer / Double.TryParse
' if you want to accept doubles
Dim numberDouble As Double
If Not Double.TryParse(TextBox1.Text, numberDouble) Then
TextBox1.Text = True
MessageBox.Show("You can only enter doubles")
End If
' if you want to accept integers
Dim numberInteger As Integer
If Not Integer.TryParse(TextBox1.Text, numberInteger) Then
TextBox1.Text = True
MessageBox.Show("You can only enter integers")
End If
更好的是,使用NumericUpDown,它内置了所有验证。
Dim numberDecimal As Decimal = NumericUpDown1.Value
Dim numberDouble = Convert.ToDouble(NumericUpDown1.Value)
Dim numberInteger = Convert.ToInt32(NumericUpDown1.Value)
在使用NumericUpDown.Maximum和NumericUpDown.Minumum之前设置NumericUpDown.Minumum和NumericUpDown.DecimalPlaces(即在设计器中),并且所有的验证都会得到处理。