winForm 中如何区分文本框中是手动键盘输入还是扫描枪扫描的

weilu0328 2010-11-04 05:40:18
我的窗体上有个TextBox,想禁止user手动键盘输入,允许从条码扫描枪中扫描得到,请问有大虾知道如何设置吗?或者怎么操作的?感激
...全文
762 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
夜雨悠扬 2010-11-09
  • 打赏
  • 举报
回复
5 楼 gxingmin 的方法应该是好用的。
gxingmin 2010-11-09
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 gxingmin 的回复:]
VB.NET code
'禁止用户键盘输入

Private Sub TextBox1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
e.Handled = True
End S……
[/Quote]

这样不行吗?
weilu0328 2010-11-09
  • 打赏
  • 举报
回复
的确是,当把text的readonly设置成false的话,扫码枪也相当于被禁止了,因为扫码枪也等同一个前段输入设备。关键的问题是要在禁止键鼠的前提下,允许扫描枪输入。。。
gxingmin 2010-11-05
  • 打赏
  • 举报
回复
'禁止用户键盘输入

Private Sub TextBox1_KeyPress(ByVal sender As System.Object, ByVal e As System.Windows.Forms.KeyPressEventArgs) Handles TextBox1.KeyPress
e.Handled = True
End Sub
yanlongwuhui 2010-11-05
  • 打赏
  • 举报
回复
建议既允许手动键盘输入,也允许扫描枪扫描,并通过判断回车键来判断当前输入的信息是否是有效的条码即可
yanlongwuhui 2010-11-05
  • 打赏
  • 举报
回复
如果条码不清楚导致无法扫描成功时,你准备怎么输入?
weilu0328 2010-11-05
  • 打赏
  • 举报
回复
能说得详细点不 大虾
ronaltn 2010-11-05
  • 打赏
  • 举报
回复
[Quote=引用 10 楼 jaylongli 的回复:]

扫描枪应该是自动的吧,即用程序赋值的吧?

那你把text设置为只读就OK乐
[/Quote]
把TextBox设置成ReadOnly之后,扫码枪就输入不了数据了。
还是听sp大哥的话,做标记来判断。
加油馒头 2010-11-05
  • 打赏
  • 举报
回复
扫描枪应该是自动的吧,即用程序赋值的吧?

那你把text设置为只读就OK乐
  • 打赏
  • 举报
回复
呵呵,当然也可是使用一个在键盘上非常不容易打入的字符做前缀。
  • 打赏
  • 举报
回复
[Quote=引用楼主 weilu0328 的回复:]
我的窗体上有个TextBox,想禁止user手动键盘输入,允许从条码扫描枪中扫描得到,请问有大虾知道如何设置吗?或者怎么操作的?感激
[/Quote]

所有的扫描设备都可以自定义条码的前后缀(例如扫几下设置手册上的条码就能设置好),你可以设置前后缀例如前缀“sp”,但是在程序中将keydown事件读取到前两个字符只做标志而从读取的字符中过滤掉。
xiagirl 2010-11-05
  • 打赏
  • 举报
回复
把Textbox框设为只读,呵呵。。。。。。。
hzybc 2010-11-05
  • 打赏
  • 举报
回复
TextBox1.ReadOnly = True
neohope 2010-11-04
  • 打赏
  • 举报
回复
重载一下,处理按键时不调用基类直接返回?

16,549

社区成员

发帖
与我相关
我的任务
社区描述
VB技术相关讨论,主要为经典vb,即VB6.0
社区管理员
  • VB.NET
  • 水哥阿乐
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧