黑马程序员技术交流社区

标题: 可以使用这种方法来判断textbox的值,是否为数字么? [打印本页]

作者: ww448483689    时间: 2013-8-15 23:01
标题: 可以使用这种方法来判断textbox的值,是否为数字么?
try
{
nl = Convert.ToInt32(textBox5.Text);
}
catch (Exception)
{ MessageBox.Show("年龄只能为数字哦,亲");
return;
}

作者: 咖喱猫    时间: 2013-8-15 23:16
本帖最后由 咖喱猫 于 2013-8-15 23:52 编辑

也可以,不过用这个比较好:
int number;
if(int.TryParse(textBox5.Text),out number)
{
    MessageBox.Show("年龄为:"+textbox5.text);
}else{
MessageBox.Show("年龄只能为数字哦,亲");
}

或者在文本框设置键盘敲击事件KeyPress,使用正则表达式来限制文本框只能输入数字(其他的按键时无效):
  1.   //当键盘被敲击时
  2.         private void textBox5_KeyPress(object sender, KeyPressEventArgs e)
  3.         {
  4.             //正则表达式,用来限制用户只能输入数字,包括退格键
  5.             Regex regex = new Regex("[0-9]|\b| ");
  6.             Match match = regex.Match(e.KeyChar.ToString());
  7.             //匹配
  8.             if (match.Success)
  9.             {
  10.                 //匹配成功就显示
  11.                     e.Handled = false;
  12.             }
  13.             else
  14.             {
  15.                 //匹配失败就不显示
  16.                 e.Handled = true;
  17.             }
  18.         }
复制代码

作者: 于驭龙    时间: 2013-8-15 23:47
  1. private void textBox1_KeyPress(object sender, KeyPressEventArgs e)
  2.         {
  3.             if (!(Char.IsNumber(e.KeyChar)) && e.KeyChar != (char)13 && e.KeyChar != (char)8)
  4.             {
  5.                 e.Handled = true;
  6.    MessageBox.Show("你输入的是数字!");

  7.             }
  8.                             }
复制代码
用自带的事件处理!!! 限制按键对象   除了1-9  其他键都反应!!
作者: brucel50    时间: 2013-8-17 17:06
其实可以写文本框的Leave事件
  1.         private void textBox1_Leave(object sender, EventArgs e)
  2.         {
  3.             //MessageBox.Show("test");
  4.             int i;
  5.             bool b = int.TryParse(textBox1.Text, out i);
  6.             if (!b)
  7.             {
  8.                 MessageBox.Show("该内容只能输入数字哦!");
  9.             }
  10.         }
复制代码

作者: 瞎猫馒头米田共    时间: 2013-8-20 14:37
最好调用下.Tirm()去除掉两边空格。
作者: 黑马-吕老师    时间: 2013-8-26 13:30
技术分10分可以在黑马报名系统进行入学资格审核,请尽快写够10篇学习日记到入学测试区发帖,并进行下一环节
作者: xinchenglong    时间: 2013-8-26 15:31
可以的啊亲,不够用int.TryParse(string str,out int result)这个比较好一些……




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2