欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

winForm 输入框不可手动输入,只能扫描枪输入

程序员文章站 2022-06-14 22:35:19
...

winForm 输入框不可手动输入,只能扫描枪输入的话,常规思路是串口扫描枪,但这个方式成本比较高
下面这个思路,逻辑就是通过判断TextBox中KeyDown事件和KeyUp事件,键盘按下和松开的这一过程的时间长短,来判断是手动输入还是扫描枪录入,代码如下

		//定义时间变量
		private DateTime _dt;
		//KeyDown按钮事件,记录当前时间
        private void txttm_KeyDown(object sender, KeyEventArgs e)
        {
            _dt = DateTime.Now;
        }
        //KeyUp事件中比较两次时间
        private void txttm_KeyUp(object sender, KeyEventArgs e)
        {

            DateTime _tempDt = DateTime.Now;
            TimeSpan ts = _tempDt.Subtract(_dt);
            if (ts.Milliseconds > 100)
            {
                //setTool("错误:禁止手工输入!", "N");
                txttm.Text = "";//清空
            }
        }