我正在使用面部跟踪进行 HCI(人机交互)。我正在尝试使用面部控制 PC。
我有 3x3 二维网格的按钮。1 2 3 4 5 6 7 8 9
假设,当前焦点在按钮 5 上。如果我按向上箭头,则焦点将在 2 上,向下箭头焦点将在 8 上,向左箭头 4 和向右箭头 6。
我想在不使用向上、向下、向左和向右箭头键的情况下实现向上、向下、向左和向右箭头功能的功能。我已经完成了左、右、上和下的决定。需要进行哪些事件处理、设置 tabindex 和进一步处理?
如果您询问如何引发键盘按下事件,那么我认为您可以使用SendKeys类。
我假设您想创建一个使用人脸跟踪将用户移动转换为 UP DOWN 等按键事件的程序。上面的类有一个方法 Send() 方法,它接受一个密钥代码并将密钥传递给活动应用程序。
喜欢:
SendKeys.Send("{UP}");//For UP arrow key
由于您已经创建了将焦点转移到网格中相应按钮的方法,因此您可以在引发事件时发送相应的键。
然而 FaceDetection 是一项研究级别的任务,您需要自己实现它或找到一些好的库来引发这些事件。
要在WPF中生成按键事件,请查看此 SO Answer。