我有一个Snap 3100系列USB线性条码扫描枪。它通过从条形码图像捕获数据并返回值来作为键盘楔。
我编写了程序来自动对焦并在文本框中显示扫描值。但是当用户执行其他功能时它会失去焦点,并且必须将光标放回Textbox以获取值。这是POS系统,我不希望操作员在焦点丢失时使用鼠标。
我尝试过使用两者:
textbox1.Focus();
和
this.ActiveControl = textbox1;
但没有工作。
非常感谢任何帮助。
NOTE:
在Web应用程序中,我会使用JQuery来处理这个问题。我在Winforms中需要这样的东西。
$(function() {
// Focus on load
$('.scanner').focus();
// Force focus
$('.scanner').focusout(function(){
$('.scanner').focus();
});
// Ajax Stuff
$('.scanner').change(function() {
$.ajax({
async: true,
cache: false,
type: 'post',
url: '/echo/html/',
data: {
html: '<p>This is your object successfully loaded here.</p>'
},
dataType: 'html',
beforeSend: function() {
window.alert('Scanning code');
},
success: function(data) {
window.alert('Success');
$('.objectWrapper').append(data);
},
// Focus
complete: function() {
$('.scanner').val('').focus();
}
});
});
});
答案 0 :(得分:2)
在键盘上形成Catch按键事件。条形码扫描器在扫描的代码之后发送返回字符(进入)。抓住整个事物,决定它是否是条形码,并将其输入所需的文本框?
http://msdn.microsoft.com/en-us/library/ms171538%28v=vs.110%29.aspx