永发信息网

如何判断文本框中输入的值是否是浮点型 请教大侠

答案:3  悬赏:30  手机版
解决时间 2021-02-24 07:53
  • 提问者网友:温旧梦泪无声
  • 2021-02-23 13:15
如何判断文本框中输入的值是否是浮点型 请教大侠
最佳答案
  • 五星知识达人网友:傲气稳了全场
  • 2021-02-23 13:49
也不难,C#代码:
//返回true:是浮点型,返回false:非浮点型
public bool checkFloat(string str)
{
//先判断是否有"."号
if (str.Contains("."))
{
try
{
//是否能转为浮点数
float temp = float.Parse(str);
return true;
}
catch (Exception)
{
return false;
}
}
else
{
return false;
}
}

其他语言类似。
全部回答
  • 1楼网友:零点过十分
  • 2021-02-23 15:29
要吗用正则表达式,要不嫌麻烦就用代码控制: bool isNotnum = false; private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { ((TextBox)sender).ImeMode = ImeMode.Disable; this.isNotnum = false; ((TextBox)sender).Tag = ((TextBox)sender).Text; //允许输入数字、小数点和删除键 if((e.KeyChar<48||e.KeyChar>57) && e.KeyChar!=8&&e.KeyChar!=(char)('.')) { e.Handled = true; this.isNotnum = true; } //小数点只能输入一次 if(e.KeyChar ==(char)('.')&&((TextBox)sender).Text.IndexOf('.')!=-1) { e.Handled = true; } //第一位不能为小数点 if (e.KeyChar == (char)('.') && ((TextBox)sender).Text == "") { e.Handled = true; } //第一位是0,第二位必须为小数点 if (e.KeyChar != (char)('.') && ((TextBox)sender).Text == "0") { e.Handled = true; } if(e.KeyChar == 8) { e.Handled = false; } //只允许输入数字 if (e.KeyChar >= 0x4e00 && e.KeyChar <= 0x9fa5) { this.isNotnum = true; } } private void textBox1_KeyUp(object sender, KeyEventArgs e) { if (this.isNotnum && ((TextBox)sender).Text != ((TextBox)sender).Text.ToString()) { MessageBox.Show("只能输入数字!!!", "温馨提示", MessageBoxButtons.OK, MessageBoxIcon.Question); ((TextBox)sender).Text = ((TextBox)sender).Tag.ToString(); ((TextBox)sender).SelectionStart = ((TextBox)sender).Text.Length; this.isNotnum = false; return; } } }
  • 2楼网友:鸽屿
  • 2021-02-23 14:36
要吗用正则表达式,要不嫌麻烦就用代码控制: bool isNotnum = false; private void textBox1_KeyPress(object sender, KeyPressEventArgs e) { ((TextBox)sender).ImeMode = ImeMode.Disable; this.isNotnum = false; ((TextBox)sender).Tag = ((TextBox)sender).Text; //允许输入数字、小数点和删除键 if((e.KeyChar<48||e.KeyChar>57) && e.KeyChar!=8&&e.KeyChar!=(char)('.')) { e.Handled = true; this.isNotnum = true; } //小数点只能输入一次 if(e.KeyChar ==(char)('.')&&((TextBox)sender).Text.IndexOf('.')!=-1) { e.Handled = true; } //第一位不能为小数点 if (e.KeyChar == (char)('.') && ((TextBox)sender).Text == "") { e.Handled = true; } //第一位是0,第二位必须为小数点 if (e.KeyChar !
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯