winfrom 限制文本框小数点后两位
private void numWeight_KeyPress(object sender, KeyPressEventArgs e)
{ if (char.IsNumber(e.KeyChar) || e.KeyChar == '.' || e.KeyChar == (char)Keys.Back || e.KeyChar == (char)Keys.Delete)
{
e.Handled = false; //让操作生效
int j = ; //记录小数点个数
int k = ; //记录小数位数
int dotloc = -; //记录小数点位置
bool flag = false; //如果有小数点就让flag值为true
for (int i = ; i < numWeight.Text.Length; i++)
{
if (numWeight.Text[i] == '.')
{
j++;
flag = true;
dotloc = i;
}
if (flag)
{
if (char.IsNumber(numWeight.Text[i]) && e.KeyChar != (char)Keys.Back && e.KeyChar != (char)Keys.Delete)
{
k++;
}
}
if (j >= )
{
if (e.KeyChar == '.')
{
if (numWeight.SelectedText.IndexOf('.') == -)
e.Handled = true;//输入“.”,选取部分没有“.”操作失效
}
}
if (!flag) //此处控制没有小数点时添加小数点是否满足两位小数的情况
{
if (e.KeyChar == '.')
{
if (numWeight.Text.Length - numWeight.SelectionStart - numWeight.SelectedText.Length > ) //the condition also can be instead of "textBox1.Text.Substring(textBox1.SelectionStart).Length-textBox1.SelectionLength>2"
e.Handled = true;
}
}
if (k == )
{
if (numWeight.SelectionStart > numWeight.Text.IndexOf('.') && numWeight.SelectedText.Length == && e.KeyChar != (char)Keys.Delete && e.KeyChar != (char)Keys.Back) //如果已经有两位小数,光标在小数点右边,
e.Handled = true;
}
}
}
else
{
e.Handled = true;
}
}
winfrom 限制文本框小数点后两位的更多相关文章
- JS控制文本框只能输入数字 \保留小数点后两位
		<input type="text" placeholder="保留到小数点后两位" maxlength="200" onkeyup= ... 
- Js验证 :只能输入数字和小数点 验证是否是数字 js取float型小数点后两位
		JS判断只能是数字和小数点 1.文本框只能输入数字代码(小数点也不能输入)<input onkeyup="this.value=this.value.replace(/\D/g,'') ... 
- 控制input标签中只能输入数字以及小数点后两位
		js 代码如下: /* 控制input标签中只能输入数字 和小数点后两位 */ function checkNum(obj) { //检查是否是非数字值 if (isNaN(obj.value)) { ... 
- 关于Oracle中查询的数字值的显示格式需要保留小数点后两位(或者三位,及其他位数)
		关于Oracle中查询的数字值的显示格式需要保留小数点后两位(或者三位,及其... 方法一:使用to_char的fm格式,即: to_char(round(data.amount,2),'FM9999 ... 
- 限制EditText只能输入小数点后两位
		设置EditText只能输入小数点后两位,在价格等有限制的输入时特别有效 TextWatcher textWatcher = new TextWatcher() { @Override public ... 
- input内强制保留小数点后两位 位数不足时自动补0
		input内强制保留小数点后两位 位数不足时自动补0 小数点后位数超出2位时进行四舍五入 需引入jquery包 1.11.2版本 1 function xiaoshu(x) 2 { 3 var f = ... 
- JAVA除法保留小数点后两位的两种方法 Java Math的 floor,round和ceil的总结
		floor 返回不大于的最大整数 round 则是4舍5入的计算,入的时候是到大于它的整数round方法,它表示“四舍五入”,算法为Math.floor(x+0.5),即将原来的数字加上0.5后再向下 ... 
- java 取小数点后两位 不四舍五入,怎么做
		java 取小数点后两位 不四舍五入,怎么做 正常版: //正常版: import java.text.DecimalFormat; import java.math.RoundingMode; De ... 
- Java中double类型的数据精确到小数点后两位
		Java中double类型的数据精确到小数点后两位 多余位四舍五入,四种方法 一: double f = 111231.5585;BigDecimal b = new BigDecimal(f); d ... 
随机推荐
- 【初级】linux cp 命令详解及使用方法实战
			cp:复制文件或者目录 前言: cp命令用来复制文件或者目录,是Linux系统中最常用的命令之一.一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不 ... 
- 在iis7上如何配置来看到asp报错
			今天网站改版时碰到一个问题,客户要求老网站的地图等功能要保持,但是老网站是用asp开发的.我们可以直接利用老的数据库以及老的代码,但是部署到新的服务器上一直报错. 刚开始是404,后来是500...今 ... 
- Ajax 语法
			/*** * ajax语法 * * ***/ $.ajax({ async:false, //同步请求 url:"XXXXX.do",//请求后台地址 data: {"p ... 
- tomcat8的配置
			本文章只适合初入javaweb的新人. 点击tomcat8的bin目录下的startup.bat,启动tomcat.在浏览器中输入http://localhost:8080 打开项目管理页,点击Ma ... 
- UIView点击事件。弹出视图,背景虚化。
			@interface CountryViewController //背景 @property (strong, nonatomic) UIView *BackView; end //设置背景虚化 - ... 
- 算法-QuickSort
			#include <stdlib.h> #include <iostream> #include <vector> using namespace std; tem ... 
- OGG for DB2 i 12.2发布
			2016-04-15 Oracle发布了GoldenGate for DB2 i 12.2.0.1.2,软件可以从OTN 或 eDelivery下载.这是第一个针对DB2 for i的12.2版本.此 ... 
- NSLOG打印不全的问题
			#ifdef DEBUG #define NSLog(FORMAT, ...) fprintf(stderr, "%s:%zd\t%s\n", [[[NSString string ... 
- SparkStreaming运行出现 java.lang.NoClassDefFoundError: org/apache/htrace/Trace 错误
			1.简介 最近在摸索利用sparkstreaming从kafka中准实时的读取数据,并将在读取的过程中,可以做一个简单的分析,最后将分析结果写入hbase中. 2.出现的问题 (1)将从kafka中读 ... 
- 一步一步搭框架(asp.netmvc+easyui+sqlserver)-02
			一步一步搭框架(asp.netmvc+easyui+sqlserver)-02 我们期望简洁带前台代码,如下: <table id="dataGrid" class=&quo ... 
