2012-09-12 33 views
0

我真的需要帮助的Visual Basic。正确的文本框,只允许数字和小数在视觉基本

我有3个文本框,允许数字和小数点与下面的代码:

If Not Char.IsDigit(e.KeyChar) AndAlso Not Char.IsControl(e.KeyChar) 
           AndAlso Not e.KeyChar = "." Then 
    e.Handled = True 
End If 

但我也遇到了一些问题:

  1. 我可以把“”任何地方
  2. 当我尝试添加每个文本框时,结果是一团糟。例1.2 + 3 = 15

你能修复我的代码,以便它可以做出正确的小数计算吗?

+0

恩那' “ ”C'看起来错了... – rekire

+0

有什么不对的。“” C? –

+0

我不知道那是什么意思。这是否意味着该点应该具有char类型? – rekire

回答

0

这可以帮助

Private Sub txtrate_TextChanged(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles txtmarks.KeyPress 
      If InStr(txtmarks.Text, ".") Then 
       e.Handled = Not (Char.IsDigit(e.KeyChar) Or Char.IsControl(e.KeyChar)) 
      Else 
       e.Handled = Not ((Char.IsDigit(e.KeyChar) Or e.KeyChar = ".") Or Char.IsControl(e.KeyChar)) 
      End If 
    End Sub