【问题标题】:How to add the value of barcode scanner in textbox如何在文本框中添加条码扫描器的值
【发布时间】:2018-03-01 13:16:51
【问题描述】:

我的 WindowsForm 中有多个文本框。每当我使用条形码扫描仪扫描时,我应该先单击文本框,然后再扫描。但是,我希望在扫描时将条形码扫描仪的值放在特定的文本框中。是否有特定的代码或选项?

【问题讨论】:

  • 条码扫描仪基本上是键盘。您使用的是什么 UI 框架?对于 winforms,您只需执行 textBoxName.Focus() 即可将输入焦点移动到特定文本框。
  • 可以设置像txtscanbarcode.Focus()这样的Focus方法;

标签: c# winforms barcode-scanner


【解决方案1】:

所以扫描仪工作正常,它为您提供所选文本框的值。通过单击文本框控件,您将焦点放在该控件上。在使用textBox1.Focus(); 方法加载表单时以编程方式执行此操作;让Form1 成为您的表单,textBox1 成为相应的文本框,代码如下所示:

public partial class Form1 : Form
{
    private void Form1_Load(object sender, System.EventArgs e)
    {
        textBox1.Focus();
    }
}

【讨论】:

    【解决方案2】:

    首先,每当您扫描任何条形码扫描仪时,都会读取该值并将该值粘贴到活动文本框中,因此如果您的要求是仅在特定的一个文本框中扫描条形码,那么您可以在表单加载事件中设置该条形码的焦点,例如下面。

            private void DataLoging_Load(object sender, EventArgs e)
        {
            try
            {
             txtBarcode.Focus();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
    

    【讨论】:

      【解决方案3】:

      在我看来,条形码扫描与键盘输入相同,它只是来自条形码扫描仪。因此,如果您希望将其仅放置在一个文本框中,则有多种选择

      ->如果您的条形码具有模式写入方法来检测该模式并检查所有文本框的 textchange 事件,如果是条形码,则填写您所需的文本框

      public static void CheckForbarcode(TextBox origin)
      {
      string data=origin.Text;
      // asssuming your barcode is 12 digit long
      
          if(data.Length==12)
          {
           //Regex Pattern goes here
           origin.Text="";
           Barcode.text=data;
          }
      
      }
      

      在任何操作完成后第二次将焦点设置到该文本框

      【讨论】:

        【解决方案4】:

        条码扫描器

        条形码扫描仪是一个键盘(只是看起来不像)。


        聚焦文本框

        TextBox 可以使用

        tbxBarcode.Focus();
        

        自动聚焦文本框

        如果文本框没有聚焦并且您扫描某些内容,则不会写入。

        使用表单的事件KeyDown 来检查是否正在扫描某些内容,但没有写入tbxBarcode


        多个条形码

        您可以使用tbxBarcode.TextChanged 事件来了解条形码是否已被完全扫描并以编程方式按Tab

        如果条形码在扫描后按Enter就更好了,因为你可以在textBox1.KeyDown中使用它并获取e.KeyValue == Keys.Enter来运行btnNextBarcode.PerformClick()

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2011-02-23
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多