返回顶部
首页 > 资讯 > 精选 >.nec# 中怎么利用textbox输入数字
  • 389
分享到

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

2023-06-17 22:06:31 389人浏览 八月长安
摘要

本篇文章为大家展示了.neC# 中怎么利用textbox输入数字,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。当界面上要用户输入只有数字的字符时,默认的c# 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输入数字,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网精选频道。

--结束END--

本文标题: .nec# 中怎么利用textbox输入数字

本文链接: https://lsjlt.com/news/293748.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • .nec# 中怎么利用textbox输入数字
    本篇文章为大家展示了.nec# 中怎么利用textbox输入数字,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。当界面上要用户输入只有数字的字符时,默认的c# textbox数字是不能胜任的,网上有很...
    99+
    2023-06-17
  • C# 中怎么利用TextBox输入数字
    C# 中怎么利用TextBox输入数字,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1、重写键盘事件OnKeyPress()键盘输入的字符可以通过重写c# te...
    99+
    2023-06-17
  • 怎么在C#中使用TextBox作数据输入方法
    怎么在C#中使用TextBox作数据输入方法?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。读取TextBox控件中数据并发送private void&...
    99+
    2023-06-15
  • VBS怎么利用SendKeys输入中文字符
    这篇文章主要介绍“VBS怎么利用SendKeys输入中文字符”,在日常操作中,相信很多人在VBS怎么利用SendKeys输入中文字符问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”VBS怎么利用SendKeys...
    99+
    2023-06-08
  • C#使用TextBox作数据输入方法
    笔者最近需要上位机与下位机进行数据交互,在广泛参考大佬的资料后,较为完善地使用Textbox控件进行数据输入的功能。 程序段主要功能:实现输入数据并转换成byte数组再通过串口发送至...
    99+
    2024-04-02
  • Android中怎么利用EditText限制输入字符
    这篇文章给大家介绍Android中怎么利用EditText限制输入字符,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 第一种方式:  设置EditText的inputType属性,可以通过xml或者...
    99+
    2023-05-30
    android edittext
  • Asp.net之TextBox只允许输入数字的方法总结
    在ASP.NET中,可以通过以下几种方法来限制TextBox只允许输入数字:1. 使用RegularExpressionValida...
    99+
    2023-08-17
    Asp.net
  • c++中怎么输入数字
    c++ 中输入数字的方法有三种:使用 cin:int num; cin >> num;使用 stoi:string str; cin >> str; int nu...
    99+
    2024-05-12
    c++
  • C# 中怎么利用TextBox实现换行
    C# 中怎么利用TextBox实现换行,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。C# TextBox换行时你往往会想到直接付给一个含有换行符"\n...
    99+
    2023-06-17
  • java怎么输入数字
    java的Scanner类提供了nextInt、nexFloat、nextDouble等方法,可以像类似C语言的scanf那样读取指定类型的数字。(推荐:java视频教程)首先定义一个Scanner对象:Scanner sn = new S...
    99+
    2018-11-11
    java
  • pycharm怎么输入数字
    在 pycharm 中输入数字的方法包括:1. 直接输入;2. 使用 int() 或 float() 函数转换字符串;3. 使用科学计数法;4. 使用 numpy 库的 array() ...
    99+
    2024-04-25
    python pycharm
  • c#输入函数怎么输入字符串
    在 c# 中,输入字符串的两种主要方法是:console.readline():获取一行文本输入,适用于一次性输入。string.concat():串联多行文本输入,适用于连续...
    99+
    2024-05-11
    c#
  • C#中怎么利用实现TextBox换行功能
    这篇文章将为大家详细讲解有关C#中怎么利用实现TextBox换行功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。要让一个Windows Form的C# TextBox换行显示多行文本就得把...
    99+
    2023-06-17
  • 怎么在Android应用中利用EditText禁止在输入框中输入空格与特殊字符
    今天就跟大家聊聊有关怎么在Android应用中利用EditText禁止在输入框中输入空格与特殊字符,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。具体实现如下: public stat...
    99+
    2023-05-31
    edittext android roi
  • Android中怎么利用EditText输入表情
    Android中怎么利用EditText输入表情,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、简介editText是TextView的子类,TextView能用的工具Edi...
    99+
    2023-05-30
    edittext android
  • C#怎么限制TextBox控件内输入值的范围
    要限制TextBox控件内输入值的范围,可以使用以下两种方法:1. 使用事件处理程序:在TextBox的KeyPress事件中添加以...
    99+
    2023-08-16
    C# TextBox
  • c++中怎么输入字母
    如何在 c++ 中输入字母?可以通过三种方法进行输入:使用 cin 和 istream_iterator。使用 getline。使用字符数组。 如何在 C++ 中输入字母 在 C++ ...
    99+
    2024-05-09
    c++
  • c++中怎么输入汉字
    在 c++ 中输入汉字可以通过三种方法:使用 std::wcin 流,专门用于输入多字节字符。使用 cin.imbue() 将流关联到特定 locale,例如 zh_cn.utf-8。使...
    99+
    2024-05-09
    c++
  • HTML怎么限制input输入框只输入纯数字
    这篇文章主要介绍HTML怎么限制input输入框只输入纯数字,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!限制input输入框只输入纯数字的方法:通过oninput事件,在事件中使用replace()函数配合正则表达...
    99+
    2023-06-14
  • ubuntu怎么输入中文字符
    ubuntu输入中文字符的方法:需要将中文语言包安装上才可以输入,安装:在终端打开/etc/environment文件,添加以下两行代码:LANG="zh_CN.UTF-8"LANGUAGE="zh_CN:zh...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作