Foxtable(狐表)用户栏目专家坐堂 → [求助]如何做到TextBox只允许读卡器输入,不允许手工输入


  共有4186人关注过本帖树形打印复制链接

主题:[求助]如何做到TextBox只允许读卡器输入,不允许手工输入

帅哥哟,离线,有人找我吗?
jnletao
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:936 积分:7719 威望:0 精华:0 注册:2013/7/7 13:37:00
[求助]如何做到TextBox只允许读卡器输入,不允许手工输入  发帖心情 Post By:2013/10/31 18:01:00 [只看该作者]

TextBox如何做到只允许读卡器输入,不允许手工输入,

求代码

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251048 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2013/10/31 18:05:00 [只看该作者]

似乎是没有办法的哦,因为读卡器输入本质上和键盘输入是一回事。

 

你试试在keypress和keydown事件设置代码看看,按道理是不行的。


 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40550 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/10/31 18:15:00 [只看该作者]

变通可以:

 

第一步:假设该文本框名称为TextBox1,将其复制一个,假设为TextBox2

第二步: TextBox1只读属性设置为true,TextBox2可见属性设置为false,TextBox2的ValueChanged事件代码设置为:e.Form.Controls("TextBox1").Value = e.Sender.Value

 

然后:读卡器输入到TextBox2即可,没什么难度的!

 

 

[此贴子已经被作者于2013-10-31 18:15:25编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
oaok
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1198 积分:7859 威望:0 精华:0 注册:2013/5/17 14:26:00
  发帖心情 Post By:2013/10/31 18:21:00 [只看该作者]

用户已经被屏蔽

 回到顶部
帅哥哟,离线,有人找我吗?
程兴刚
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:超级版主 帖子:7235 积分:40550 威望:0 精华:16 注册:2008/8/31 23:23:00
  发帖心情 Post By:2013/10/31 18:29:00 [只看该作者]

哦,那就监视端口,直接将端口采集到的数据给TextBox1输入,这个需要VB.NET高手!


 回到顶部
帅哥哟,离线,有人找我吗?
oaok
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:六尾狐 帖子:1198 积分:7859 威望:0 精华:0 注册:2013/5/17 14:26:00
  发帖心情 Post By:2013/10/31 19:22:00 [只看该作者]

用户已经被屏蔽

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2013/10/31 19:23:00 [只看该作者]

呵呵,这个简单啊,程总的做法。两个textbox,一个用来显示,一个用来供输入。可以控制textbox显示的位置,比如-1000

或者,判断输入字符的速度,如果是连续快速输入的话,就判别为读卡。

 回到顶部