我的编程空间,编程开发者的网络收藏夹
学习永远不晚

.nec# 中怎么利用textbox输入数字

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

.nec# 中怎么利用textbox输入数字

本篇文章为大家展示了.nec# 中怎么利用textbox输入数字,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

当界面上要用户输入只有数字的字符时,默认的c# textbox数字是不能胜任的,网上有很多网友们提供了很多的做法,我总结了一下写了一个在C#下的实现,做到了如下的几点:

只能输入类似这样的字符:-123456.789;1234.789;

在输入的字符串中不能存在两个点符:12456.78//正确;12.456.78//不正确;

如果表示负数可以在字符串的最前面加一个减号“-”,也只能加到弟一个字符的位置;

可以用复制粘帖功能和菜单功能,但是只对能正确格式的字符串有效,比如:12.34可以,Abc不可以;

只是得到一个字符串,还可以在这个基础上再改进自己所需的,经如添加对十六进制的支持等。

代码如下在.NET下用C#写的:

using System;  using System.Windows.Forms;   namespace NumTextBox  {   ///   /// NumTextBox 的摘要说明。   ///   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从剪贴板中得到数据    public const int WM_CLEAR = 0x0303;      //程序发送此消息给editcontrol或combobox清除当前选择的内容;    public const int WM_UNDO = 0x0304;        //程序发送此消息给editcontrol或combobox撤消***一次操作     public TextBoxNumEx()    {     //     // TODO: 在此处添加构造函数逻辑     //    }    protected override void WndProc(ref Message m)     {      switch(m.Msg)     {       case WM_CHAR:       System.Console.WriteLine(m.WParam);       bool isSign = ((int)m.WParam == 45);       bool isNum = ((int)m.WParam >= 48) && ((int)m.WParam <= 57);       bool isBack = (int)m.WParam == (int)Keys.Back;       bool isDelete = (int)m.WParam == (int)Keys.Delete;//实际上这是一个"."键       bool isCtr = ((int)m.WParam == 24) || ((int)m.WParam == 22) || ((int)m.WParam == 26) ||((int)m.WParam == 3);        if( isNum || isBack || isCtr)       {        base.WndProc (ref m);       }       if (isSign)       {        if (this.SelectionStart!=0)        {         break;        }        base.WndProc (ref m);        break;       }       if (isDelete)       {        if (this.Text.IndexOf(".")<0)        {         base.WndProc (ref m);        }       }       if ((int)m.WParam == 1)       {        this.SelectAll();       }       break;      case WM_PASTE:       IDataObject iData = Clipboard.GetDataObject();//取剪贴板对象              if(iData.GetDataPresent(DataFormats.Text)) //判断是否是Text       {        string str = (string)iData.GetData(DataFormats.Text);//取数据        if (MatchNumber(str))         {         base.WndProc (ref m);         break;        }       }       m.Result = (IntPtr)0;//不可以粘贴       break;      default:       base.WndProc (ref m);       break;     }    }    private bool MatchNumber(string ClipboardText)    {     int index=0;     string strNum = "-0.123456789";     index = ClipboardText.IndexOf(strNum[0]);     if (index>=0)     {      if (index>0)      {       return false;      }      index = this.SelectionStart;      if (index>0)      {       return false;      }     }      index = ClipboardText.IndexOf(strNum[2]);     if (index!=-1)     {      index = this.Text.IndexOf(strNum[2]);      if (index!=-1)      {       return false;      }     }      for(int i=0; i<ClipboardText.Length; i++)     {      index = strNum.IndexOf(ClipboardText[i]);      if (index <0)      {       return false;      }     }     return true;    }   }  }

上述内容就是.nec# 中怎么利用textbox输入数字,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

.nec# 中怎么利用textbox输入数字

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

.nec# 中怎么利用textbox输入数字

本篇文章为大家展示了.nec# 中怎么利用textbox输入数字,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。当界面上要用户输入只有数字的字符时,默认的c# textbox数字是不能胜任的,网上有很
2023-06-17

C# 中怎么利用TextBox输入数字

C# 中怎么利用TextBox输入数字,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1、重写键盘事件OnKeyPress()键盘输入的字符可以通过重写c# te
2023-06-17

怎么在C#中使用TextBox作数据输入方法

怎么在C#中使用TextBox作数据输入方法?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。读取TextBox控件中数据并发送private void Botto
2023-06-15

VBS怎么利用SendKeys输入中文字符

这篇文章主要介绍“VBS怎么利用SendKeys输入中文字符”,在日常操作中,相信很多人在VBS怎么利用SendKeys输入中文字符问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”VBS怎么利用SendKeys
2023-06-08

Android中怎么利用EditText限制输入字符

这篇文章给大家介绍Android中怎么利用EditText限制输入字符,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 第一种方式: 设置EditText的inputType属性,可以通过xml或者Java文件来设置。
2023-05-30

c++中怎么输入数字

c++ 中输入数字的方法有三种:使用 cin:int num; cin >> num;使用 stoi:string str; cin >> str; int num = stoi(str);使用 istringstream:string s
c++中怎么输入数字
2024-05-12

C# 中怎么利用TextBox实现换行

C# 中怎么利用TextBox实现换行,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。C# TextBox换行时你往往会想到直接付给一个含有换行符"\n"的字符串
2023-06-17

java怎么输入数字

java的Scanner类提供了nextInt、nexFloat、nextDouble等方法,可以像类似C语言的scanf那样读取指定类型的数字。(推荐:java视频教程)首先定义一个Scanner对象:Scanner sn = new Scanner(Sys
java怎么输入数字
2018-11-11

pycharm怎么输入数字

在 pycharm 中输入数字的方法包括:1. 直接输入;2. 使用 int() 或 float() 函数转换字符串;3. 使用科学计数法;4. 使用 numpy 库的 array() 函数创建数组。在 PyCharm 中输入数字在 Py
pycharm怎么输入数字
2024-04-25

c#输入函数怎么输入字符串

在 c# 中,输入字符串的两种主要方法是:console.readline():获取一行文本输入,适用于一次性输入。string.concat():串联多行文本输入,适用于连续输入。C# 中输入字符串的函数在 C# 中,有两种主要的方法可
c#输入函数怎么输入字符串
2024-05-11

怎么在Android应用中利用EditText禁止在输入框中输入空格与特殊字符

今天就跟大家聊聊有关怎么在Android应用中利用EditText禁止在输入框中输入空格与特殊字符,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。具体实现如下:/** * 禁止Edi
2023-05-31

Android中怎么利用EditText输入表情

Android中怎么利用EditText输入表情,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、简介editText是TextView的子类,TextView能用的工具Edi
2023-05-30

C#中怎么利用实现TextBox换行功能

这篇文章将为大家详细讲解有关C#中怎么利用实现TextBox换行功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。要让一个Windows Form的C# TextBox换行显示多行文本就得把
2023-06-17

c++中怎么输入字母

如何在 c++ 中输入字母?可以通过三种方法进行输入:使用 cin 和 istream_iterator。使用 getline。使用字符数组。如何在 C++ 中输入字母在 C++ 中输入字母,可以使用以下方法:1. 使用 cin 和 i
c++中怎么输入字母
2024-05-09

c++中怎么输入汉字

在 c++ 中输入汉字可以通过三种方法:使用 std::wcin 流,专门用于输入多字节字符。使用 cin.imbue() 将流关联到特定 locale,例如 zh_cn.utf-8。使用自定义转换函数将非 utf-8 编码的汉字转换为宽字
c++中怎么输入汉字
2024-05-09

HTML怎么限制input输入框只输入纯数字

这篇文章主要介绍HTML怎么限制input输入框只输入纯数字,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!限制input输入框只输入纯数字的方法:通过oninput事件,在事件中使用replace()函数配合正则表达
2023-06-14

c++中字符串怎么输入

c++ 中字符串输入有两种方法:getline 函数,读取整行字符串,包括空格。cin >> 运算符,读取单个单词或以空格分隔的字符串。C++ 中字符串输入在 C++ 中通过 cin 输入字符串有两种方法:1. getline 函数g
c++中字符串怎么输入
2024-05-01

Android中怎么利用EditText禁止输入表情

这期内容当中小编将会给大家带来有关Android中怎么利用EditText禁止输入表情,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。InputFilter inputFilter= new InputFi
2023-05-30

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录