我想在Linux Lubuntu x64下阅读键盘和鼠标输入。
我从输入中获得的字符和动作需要通过lan发送到另一台Linux计算机。
我不需要绝对的鼠标坐标。
我是X11的herard,但这仅适用于一个窗口。 是否有一种简单的方法可以在全球舞台上获得所有这些输入?
由于
答案 0 :(得分:0)
我假设您正在运行桌面(不是普通控制台),即使用X11服务器(因此编写X11 客户端应用程序)。
请理解X11服务器是在连接到物理LCD屏幕和物理键盘和鼠标的台式机或笔记本电脑上运行的。所以X11服务器不远程,但本地和物理上接近你的眼睛。 X11客户端应用程序可能是远程的,但通常是本地的。
我的目标不明确。
您需要了解有关X Window System core protocol的更多信息。您可以抓住鼠标和/或键盘并使用根窗口 - 即整个屏幕(因此可以获取事件)。看起来您想要编写window manager的某些部分。
另请阅读有关Extended Window Manager Hints
等惯例的详情在实践中,您肯定希望使用某些工具包,例如Qt或Gtk。也许libsdl非常适合您的需求(我不太了解)。
或许改进现有的窗口管理器和桌面环境更为现实。利用并为与您的目标相关的现有free software做出贡献。
请注意,Wayland可能会在几年内取代X11。
PS。这可能意味着许多个月(或几年)的工作。但我不确定你的目标是什么
如果您只需要将按键和鼠标移动发送到远程计算机,请考虑使用ssh -X
(google for X over SSH),或使用一些远程X11应用程序(即设置DISPLAY=desktop:0
远程Linux机器并在那里启动X11客户端应用程序),或者可能使远程机器上的软件成为专门的Web服务器(通过使用某些HTTP服务器库,如libonion)并使用桌面浏览器。
看起来你想让你的Linux桌面(或笔记本电脑)像X terminal那样工作。这是可能的,但今天(2014年)可能是一个坏主意。您可能希望您的Web浏览器是本地的,甚至可能是LibreOffice套件。让您的桌面至少(或多或少)thin client;如果远程计算机和应用程序没有X11客户端库,请参阅Vnc