我正在使用 Gtk 库用 C 编写一个游戏,玩家可以在其中控制一个可移动的角色。但是,我希望玩家能够按住一个键连续朝一个方向移动。如何覆盖按住键的正常行为,即生成一个键事件,有一个短暂的停顿,然后键事件连续发生?
我注意到之前有人问过一个类似的问题,关于在 Javascript 中做同样的事情;然而,答案并不能真正帮助在 Gtk 中实现相同的系统。我注意到有一个 GtkDevice “类”;是否有与之相关的功能可以让我控制键盘输入的缓冲?
最佳答案
连接到 GTK 的 key_press_event
和 key_release_event
信号。
它们将按照您的描述工作。
您有责任跟踪您感兴趣的键当前是否在给定时间被按下。
关于c - 删除按键延迟,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8796109/