只许扫码枪输入,不允许手动输入,判断条件:输入频率

只许扫码枪输入,不允许手动输入,判断条件:输入频率

//定义一个成员函数用于保存每次的时间点
private DateTime _dt = DateTime.Now;  
//最大时间间隔
private int interval_time = 500;  
private void txtBarCode_KeyUp(object sender, KeyEventArgs e)
        { 
            //判断时间间隔,如果时间间隔大于500毫秒,则将TextBox清空          
            if (UserInput_IsEnabled(interval_time))              
            {
                if (e.Key == System.Windows.Input.Key.Enter)
                {
                    this.lblResult.Content = this.txtBarCode.Text.Trim();
                    this.txtBarCode.SelectAll();
                    this.tb_CRYSTAL_CODE.Focus();
                }
            }
            else
            {
                tb_CRYSTAL_CODE.Text = string.Empty;
            }
        }
        //输入频率判断
        private bool UserInput_IsEnabled(int Max_Time)
        {
            //清空剪切板内容
            Clipboard.Clear();
            //保存按键按下时刻的时间点   
            DateTime tempDt = DateTime.Now;
            //获取时间间隔      
            TimeSpan ts = tempDt.Subtract(_dt);
            //判断时间间隔,如果时间间隔大于500毫秒,则将TextBox文本置空          
            if (ts.Milliseconds > Max_Time)
            {
                _dt = tempDt;
                return false;
            }
            else
            {
                return true;
            }
        }
原文链接:https://blog.csdn.net/lybwwp/article/details/80801573

你可能感兴趣的:(C#)