按键功能

时间:2014-06-08 20:07:25

标签: c++

嘿我怎么用C ++做这个: 我有一个变量,当我按下键'+'它应该增加一个,但是当我按住键超过500毫秒时,变量应该每隔500毫秒开始增加5,而我仍然按住按下按钮,它应该在我释放它时停止。 我知道getActiveKeyState()函数,但我似乎无法按照我想要的方式工作。 我该如何进入这个?

1 个答案:

答案 0 :(得分:0)

我不了解原生C ++函数,但它对SFML库很有用。

if (event.type == Event::KeyPressed){
            if (sf::Keyboard::isKeyPressed(sf::Keyboard::Add))
            {
                //start counter
                if(count < 5) sum++;          
                else
                 sum+=5;
            }
        }

您可以使用WinApi执行相同的操作,但在这两种情况下,您都需要对计数器使用多线程/多处理,或者找到另一种方法来同步代码。 您可以尝试添加Sleep(500),这将使您的线程睡眠500毫秒或类似的东西。