我试图将钢琴键解释为键盘输入。我正在通过Raspberry Pi上的UART接收钢琴键号。我有一个使用GTK在C中制作的GUI,当我检测到某些钢琴键时,我需要将它们作为键盘输入或箭头键发送以导航GUI。任何人有任何想法如何做到这一点?GTK非标准输入
Q
GTK非标准输入
-1
A
回答
1
从我收集你不希望钢琴键被解释为键盘输入;相反,您希望按照与键盘输入相同的方式处理钢琴键。在收到指定的钢琴键盘事件时,让它调用与相应的键盘键相同的功能。
1
在Linux中,最简单的方法是使用X11的XTest扩展,特别是函数XTestFakeKeyEvent
。
但是别忘了打电话给XTestQueryExtension
初始化扩展!这是一个常见的错误:如果你不打电话给这个功能,其他的XTest*
功能根本不起作用!
你也可以让你的钢琴真实的键盘编写用户空间的驱动程序:您可以创建输入设备,通过使用uinput
内核驱动程序发送输入事件到内核:基本上它创建了一个/dev/uinput
的设备,可以与操纵ioctl
s可以做任何你需要的。
相关问题
- 1. 非缓冲标准输入读取
- 2. 非标准输入的神经网络
- 3. Ember.js:非标准路由,需要输入
- 4. NCURSES标准输入
- 5. Python标准输入
- 6. boost ::精神与非标准(非字符串)输入流
- 7. 写入标准输出并从标准输入读取C
- 8. bash:冲洗标准输入(标准输入)
- 9. csh标准输入到Python标准输入?
- 10. Python的多标准输入输入
- 11. 打开Windows控制台的标准输入/标准输出/标准输入/输出为win32和win64在C
- 12. 的Gtk ::按键采用标准图标
- 13. 标准数字输入
- 14. Maven写入标准输出
- 15. 蟒蛇标准输入EOF
- 16. Redericting stdout和标准输入
- 17. 从标准输入读取
- 18. 标准输入堆积
- 19. 重定向标准输入
- 20. socat阻断标准输入
- 21. 多行的标准输入
- 22. 标准控制台输入
- 23. 进程通信中的管道标准输入/标准输出。
- 24. 命名管道,chaning标准输入,在标准输出叉()
- 25. 标准输出/标准输入和参数
- 26. Docker执行与OpenSSL和标准输入,标准输出
- 27. 试图了解标准输入,标准输出
- 28. 远程调试w/Eclipse CDT gdbserver:标准输入/标准输出
- 29. Python:同时使用标准输入和标准输出
- 30. C:重定向标准输入,标准输出到管道