游戏引擎通常实现这种功能。它们通常也与平台无关(通常至少是Windows,Linux,Mac OS
X)。例如尝试Azul3D的键盘库。
逻辑就像我的头上一样
watcher := keyboard.NewWatcher()// Query for the map containing information about all keysstatus := watcher.States()left := status[keyboard.ArrowLeft]if left == keyboard.Down { // The arrow to left is being held down // Do something!}要获得当前当前按下的键的列表,只需遍历地图并列出value为Down的键即可。



