我正在尝试将钢琴键解释为键盘输入。我在 Raspberry Pi 上通过 UART 接收钢琴键号。我有一个使用 GTK 用 C 语言制作的 GUI,当我检测到某些钢琴键时,我需要将它们作为键盘输入或箭头键发送以导航 GUI。有人知道怎么做吗?
问问题
126 次
2 回答
1
据我所知,您不希望将钢琴键解释为键盘输入;相反,您希望以与键盘输入相同的方式处理钢琴键。在接收到指定的钢琴键事件时,让它调用与相应键盘键相同的函数。
于 2013-04-11T15:36:07.060 回答
1
在 Linux 中,最简单的方法是使用 X11 的 XTest 扩展,尤其是函数XTestFakeKeyEvent
.
但不要忘记调用XTestQueryExtension
初始化扩展!这是一个常见的陷阱:如果您不调用此函数,其他XTest*
函数将根本不起作用!
您还可以让您的钢琴成为一个真正的键盘,编写用户空间驱动程序:您可以创建输入设备并将输入事件发送到内核使用uinput
内核驱动程序:基本上它创建一个/dev/uinput
您可以使用ioctl
s 操作的设备以执行您需要的任何操作.
于 2013-04-11T15:45:30.690 回答