Go语言:监听某个键盘按键是否被按下

备注:


  • 此方法只能用于监听 主键盘区的 数字键 和 字母键
  • 特殊功能键 需要换一种方法 逐个的实现(代码很长)
  • 此方法只能监听 一个按键修改源码 CGO 的部分才能 同时监听多个按键

代码实例:


package main

/*
#include 
int KeyDown(int key) {
    // 数据兼容:因为 GetKeyState() 不接受小写字母
    if (key > 96 && key < 123)  key -= 32;
    
    // 获取按下的键的状态,返回 0 则表示没按,其他情况表示按了
    return (GetKeyState(key) < 0) ? 1 : 0;
}
*/
import "C"
import "time"

func main() {
    for {
        // 监听按键 a,按下时返回 1,没按下时返回 0
        a := int(C.KeyDown('a'))
        println(a)

        // 延迟 500毫秒 后再接收,避免接收太快
        time.Sleep(500 * time.Millisecond)
    }
}

相关文章:


  • C语言:鼠标键盘按键的虚拟键码表

你可能感兴趣的:(Go语言:监听某个键盘按键是否被按下)