以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 文本框只允许扫描枪扫码输入,不允许在键盘打字输入 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=80621) |
-- 作者:fubblyc -- 发布时间:2016/1/27 16:10:00 -- 文本框只允许扫描枪扫码输入,不允许在键盘打字输入 各位老师好,因为扫码枪扫码,如果员工知道这个条码的内容,就可以不用通过扫码枪扫可以直接输入条码内容,这样会导致舞弊行为。 现在想是不是有什么方法,可以让文本框只能通过扫描枪扫码输入,而不能直接通过键盘打字输入呢? 谢谢!!
|
-- 作者:大红袍 -- 发布时间:2016/1/27 16:24:00 -- 不能识别的,只能变通处理:
从开始输入到输入结束,用时多少时间,如果是很快的,就判断成扫描枪输入。
为避免ctrl+V或者右键菜单粘贴,就在keydown事件禁用ctrl+V,而且要把文本框的右键菜单去掉
Dim t As object = e.Form.Controls("TextBox1").BaseControl |
-- 作者:fubblyc -- 发布时间:2016/1/27 17:00:00 -- 大红袍老师 威武!! |
-- 作者:fubblyc -- 发布时间:2016/1/27 17:01:00 -- 从开始输入到输入结束,用时多少时间,如果是很快的,就判断成扫描枪输入。 这段代码大概怎么写呢。。。
|
-- 作者:大红袍 -- 发布时间:2016/1/27 17:19:00 -- keydown事件
static stime As Date If e.sender.Text.length = 1 Then If e.keycode = 13 Then |
-- 作者:fubblyc -- 发布时间:2016/1/27 19:08:00 -- 大红袍老师,我看帮助的 key的枚举 是这样的: e.KeyCode = Keys.F11 那你这个 If e.keycode = 13 Then 是什么意思,在帮助上没看到 |
-- 作者:大红袍 -- 发布时间:2016/1/27 19:58:00 -- 枚举实际上就是一个数字
msgbox(Keys.Enter) |
-- 作者:fubblyc -- 发布时间:2016/1/27 20:44:00 -- 哦哦,原来如此 |