我有一个窗口应用程序,用户可以打印他们的产品条形码值,也可以扫描它, 现在我正在寻找一些线程或其他方式, 如果用户在打印第一个值后打印5值,则功能在文本框中等待用户输入(我调用文本框向上事件以捕获扫描值) 如果值正确,那么我的函数会继续执行或等到用户扫描正确的条形码,
那么我如何制作可以等待用户输入然后继续执行的方法或功能。
private void myFunction1()
{
for (i = 0; i < intPrintNo; i++) // Number Of Print
{
// here I write Code For Print My Barcode
// Now I want to wait For user Input in my text box
jumphere :
txtBarcode.Text = "";
txtBarcode.Enabled = true;
txtBarcode.Visible = true;
txtBarcode.Focus();
if (keyUp()== false)
{
txtBarcode.Text = "";
txtBarcode.Enabled = true;
goto jumphere;
}
// If return True than for loop Continue for next Printing
}
}
答案 0 :(得分:0)
根据我对您的问题的理解,您希望打印用户指定的值条形码,然后用户可以扫描相同的条形码以验证是否正确打印。
您可以使用以下步骤在Windows窗体中实现此功能
btnPrint.Enabled = txtInput.Enabled = false; Application.DoEvents();
),然后打印条形码并将焦点设置在文本框txtVerify上。编辑:根据OP评论(最小用户努力)
您可以在每次扫描后将条形码扫描仪的设置更改为后缀换行符(Enter)(您可以在条形码附带的手册中找到如何进行此设置)......现在,
步骤4.用户将扫描文本框中的条形码txtVerify(扫描将在扫描结束时按Enter键)。 txtVerify.TextChanged事件处理程序将检查是否按下了Enter键,如果是,则调用代码进行验证(比较txtInput和txtVerify中的值) 步骤5.从上面删除此步骤 如果一切正常,请清除txtInput,txtVerify,启用txtInput和btnPrint,将焦点设置为txtInput以获取下一个值 步骤7.如果错误,请做必要的。
此外,当用户按下回车键时,您可以修改第一个文本框以打印条形码(因此,无需单击“打印”按钮)
因此,经过上述修改后,用户将输入文本按回车(这将打印条形码)然后扫描(因为焦点已经在txtVerify中)。如果一切正常,可以输入新值。
要重置屏幕,您可以提供“重置”按钮。
很高兴帮忙!如果您觉得有帮助,请记得接受答案。