首页 文章

C智能按钮输入[保持]

提问于
浏览
-4

我最近学习了基本的C并且我想知道是否有任何方法可以知道键盘上的特定按钮是否被按下/释放 . 我无法真正考虑使用我的C知识来实现它的方法 .

谢谢! :)

2 回答

  • 0

    这取决于你在为什么开发?即cmd程序或基于UI . 如果例如基于CMD,那么你将需要一些库和一些代码行来完成工作 .

  • 1

    根据您的系统,这可能会有所不同 . 在Windows中,您可以使用 short GetAsyncKeyState(int key) 方法,它会返回一个带有几个包含当前键状态的位标志的short . 请记住在文件的开头添加 #include <windows.h> .

    有更好的方法可以做到这一点甚至跨平台API,但这是一种简单的方法 . 你可以在这里阅读更多关于这个方法的信息https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-getasynckeystate你也可以在这个网站上找到很多关于在C / CPP中开发windows应用程序的信息 . 正如其他人提到的那样,如果没有像windows.h这样的外部API,就没有内置的方法

    注意:即使用户键入完全不同的应用程序,此方法也会返回键的状态 . 如果要避免这种情况,则需要创建自己的Windows窗口 . 我建议你使用像https://www.glfw.org/这样的东西,因为它支持这种功能,但你仍然可以使用上面提到的方法 .

相关问题