控制台应用程序和ssh中的鼠标移动

时间:2015-09-11 17:42:32

标签: c++ linux ssh debian console-application

我正在尝试构建一个可以在显示器上运行的应用程序。应用程序应该通过ssh启动。它应该捕捉鼠标移动。 (想想要用鼠标导航的机器人)

SDL需要一个窗口,并且ssh和console的选项并不是真的。 gpm只返回按键。

有什么想法吗?

编辑:鼠标在raspi上。该应用程序将通过ssh启动,但这只是为了帮助调试。

2 个答案:

答案 0 :(得分:2)

在较低级别访问鼠标,例如通过 HID -layer直接访问相关的/dev/input/event*设备,例如使用libhid

答案 1 :(得分:1)

您可以间隔轮询鼠标位置,如果位置发生变化(发送新位置减去最后位置),则通过ssh将鼠标位置发送到raspi

POINT lastpos;

void SendMousePos()
{
    POINT currpos;
    if (GetCursorPos(&currpos))
    {
        if(currpos != lastpos)
        {
            SendMovementToRaspi(currpos.x - lastpos.x, currpos.y - lastpos.y);
            lastpos = currpos;
        }
    }
}