我正在创建一个应用程序,该应用程序位于后台并记录所有按键(目前,这个操作已经完成并工作;每个按键/按键都会触发一个事件)。我想为用户提供一个功能,它将在程序运行的整个会话中向他们展示他们的WPM。如果我添加了一个“开始”和“结束”按钮来激活计时器,这将很容易,但我只需要检测用户持续打字时-忽略所有一次性键盘快捷键,并中断用户的输入。
在这个世界上我该怎么处理这个?这在现实和准确的情况下是否可能?
发布于 2013-11-02 08:42:32
您可以简单地拥有一个内置的计时器延迟函数,当给定的时间从上一次按下键之后,它就会触发。一旦用户再次开始打字,计时器就会暂停并继续。给定的计时器可能大约是2秒,对于大多数懂计算机的人来说,这是一个合理的延迟。一旦计时器再次启动,只要从计时器中减去给定时间的2秒,WPM就不会被抛出。
键盘快捷键可能是更难的问题。类似于每一个按键事件,都会在某个地方触发查找,检查是否按下了键盘快捷方式,如果没有,则增加全局字符计数器。
https://softwareengineering.stackexchange.com/questions/214887
复制相似问题