|
另外我想了只要是这种模拟多个键盘实现usb全无冲的方式,这个问题没有办法解决。比如从键盘方解决这个问题,那只能是让键盘在我们松开符号键的同时停止向电脑发送shift按下状态的消息,但其实这个按键还是按着的,如果是使用普通键盘,这种情况下系统依然能识别这个shift是按下状态,用keyboardtest测试就能看出来。所以如果那样解决的话也跟用一个普通键盘时的情况不符,有可能在使用中遇到别的问题。
所以最好还是让操作系统把多个键盘的按键动作按照一个键盘的方式来对待。
leonfg 发表于 2011-3-17 16:43  不要用你不理解的或臆造的原理去推导。那样得到的结论是不靠谱的。比如键盘的机制就不是你想的这么运作,所以解释也不对。出现这种情况的原因是OS的Repeat机制是以键盘为单位的,单独键盘按下,不夹杂其他键,OS就会认为Repeat发生。现在因为逻辑上是多个键盘,所以每个键盘的Repeat都在持续。
从职责来看,应用软件要识别这种情况,并作出合理的处理。现在的问题是软件在处理一个Keydown和Keyup对时,没有判断Repeat的来源。导致作出错误的动作。
BCI就这个毛病,先臆想一套公理,再推导出若干定理,自己还以为得计,孰不知和实际情况一比照就像笑话一样。 |
|