当界面上要用户输入只有数字的字符时,默认的textbox是不能胜任的,网上有很多网友们提供了很多的做法,我总结了一下写了一个在c#下的实现,做到了如下的几点:
1:只能输入类似这样的字符:-123456.789;1234.789; 【程序编程相关:JAVA 多进程应用 多个定时器作业的S】 【推荐阅读:Crystal Reports 和sql】2:在输入的字符串中不能存在两个点符:12456.78//正确;12.456.78//不正确; 【扩展信息:Oracle提供标准函数,对字符集名称及】 3:如果表示负数可以在字符串的最前面加一个减号“-”,也只能加到弟一个字符的位置; 4:可以用复制粘帖功能与菜单功能,但是只对能正确格式的字符串有效,比如:12.34可以,abc不可以; 5:只是得到一个字符串,还可以在这个基础上再改进自己所需的,经如添加对十六进制的支持等. 代码如下在.net下用c#写的: using system; using system.windows.forms;namespace numtextbox
{ /// <summary> /// numtextbox 的摘要说明. /// </summary> public class textboxnumex:system.windows.forms.textbox { public const int wm_contextmenu = 0x007b;//右键菜单消息 public const int wm_char = 0x0102; //输入字符消息(键盘输入的,输入法输入的好像不是这个消息) public const int wm_cut = 0x0300; //程序发送此消息给一个编辑框或combobox来删除当前选择的文本 public const int wm_copy = 0x0301; //程序发送此消息给一个编辑框或combobox来复制当前选择的文本到剪贴板 public const int wm_paste = 0x0302; //程序发送此消息给editcontrol或combobox从剪贴板中得到数据 ... 下一页