我正在使用Gtk库在C中编写游戏,其中播放器控制可移动角色。但是,我希望玩家能够按住一个键来连续向一个方向移动。如何覆盖持有密钥的正常行为,其中生成密钥事件,短暂暂停,然后在连续流中发生密钥事件?
我注意到之前曾问过一个类似的问题,即在Javascript中做同样的事情;但是,答案并没有真正帮助在Gtk中实现相同的系统。我注意到有一个GtkDevice“类”;是否有一个与它有关的功能,这将允许我控制键盘输入的缓冲?
答案 0 :(得分:3)
连接到GTK的key_press_event
和key_release_event
信号。
他们会像你描述的那样工作。
您有责任跟踪您感兴趣的按键当前是否在指定时间按下。