当前位置:主页>仓库管理软件> 列表

100分求 键盘输入控制 找傻瓜进销存

仓库管理软件版1楼: 在Tedit中,怎么分辨输入的值,来之键盘还是扫描枪?
(我是想让键盘输入被限制,只能接受条码枪扫的数据)
在线等待

2楼: 键盘会触发OnKeyPress事件 如仓库管理软件

3楼: procedure TForm1.Edit1KeyPress(Sender: TObject; var Key: Char);
begin // 只接受0到9的數字
if not (key in [''0''..''9'']) then
key:=#0;
end;

4楼: 我知道接受的是0~9的数值,是keypress事件
我只想接受条码枪扫的数据,不想让键盘输入有效

5楼: 设置Tedit.ReadOnly := True;
对于条码枪的数据,通过代码写到TEdit.Text中

6楼: To royal1442:
怎么读条码枪的数据?

仓库管理软件版7楼: 在不限制用户键盘输入的时候,条码枪是怎么工作的?

8楼: 直接读的,只要edit得到焦点

9楼: 条码枪跟键盘产生的消息是一样的,不能在事件里面来判断。
估计处理windows消息满足不了你的需求。
很难搞,找个写驱动的牛人问问吧。

10楼: 晕了,那是pos机的键盘,对那东西更不了解了

11楼: 能不能这样,条码枪产生的录入速度是很快的,你在事件里面测试两个击键之间的时间间隔,只接受某个时间间隔之内的录入。

12楼: 这个到是可以试试,就是不知道条码枪的间隔是多少时间 如傻瓜进销存

13楼: 自己测试一下吧。


刚刚是头脑发热想到的,实现不了也不要怪我。^_^

仓库管理软件版14楼: 这个试了再说了.
以前我是做了一个假的屏蔽,要连输13位才有效的,
谁知道真的有人干了这个事情

15楼: 条码枪输入一般最后带回车符,你判断一下输入第一个字符和回车符之间的时间间隔就可以了,如果大于多少,认为是键盘输入扔掉。

16楼: 谢谢各位!估计这样是可行的.