计算按键的持续时间

时间:2013-10-20 05:12:36

标签: python python-3.x

以下是设置:

我正在使用 python 编写一个简单的驾驶模拟脚本。 我想通过允许玩家部分按下燃气/制动器/离合器来包括按下踏板的现实。 同样的规则将适用于压下踏板。

所以我弄脏了手,开始编码。 我将变量 pedalpressed 设置为0.0(浮点数)。我希望它能够在玩家按下一个键(例如'q'键)时进行修改,直到它达到100.我希望它在1.5秒内达到100。

pedalpressed = 0.0

因此,按住'q'键1.5秒,变量 pedalpressed 将爬升至100。 现在,如果我按住它的时间少于1.5秒,踏板的值将不会达到100并且将设置为它已达到的任何数字......

pedalpressed = 79.34

直到你再次按'q'(然后将从那里继续直到100)。

pedalpressed = 100.00

以下是问题:

如何捕捉按键的持续时间,并在按住键的同时,进行浮动爬升直至达到给定值。之后,我怎样才能在1.5秒的时间范围内完成上述工作?

1 个答案:

答案 0 :(得分:-1)

取决于您正在使用的工具,但一般方法是捕获keydown和keyup evenet,而不是仅仅一个按键。

delta = CurrentTime - keyDownTime; // actual press time
delta = keyUpTime   - keyDownTime; // release - how long was key down ?