Ubuntu GUI 无法接受虚拟按键

Ubuntu GUI 无法接受虚拟按键

我是 ubuntu 新手,我正在尝试重新创建我在 Windows 中制作的一些项目,但在模拟按键和模拟鼠标移动和点击方面遇到了问题。

因此,假设我想做类似的事情pyautogui.press('a'),或者不使用 python 的替代方法是在终端中输入xdotool key a,这个想法只是模拟按下字母 a,并且它会检测到击键,但是根据我使用的程序,它不会将其视为输入。例如,如果我尝试在普通终端中运行它,它不会显示我按下了字母 a,但如果我在 visual studio 或 sublime text 中运行该命令,它可以正常工作。它似乎在窗口之间交互、使用快捷方式和模拟鼠标事件方面也存在问题。

说实话,我只是想知道这是否是一项保护系统免受不必要的模拟击键侵害的功能,或者这只是我做错的事情,因为我在网上找不到有关该主题的任何信息。

答案1

它不起作用的原因是您使用了新的 Wayland 显示协议。xdotool和等工具pyautogui仅在 Xorg 中有效。

你可以在 Xorg 上运行 Ubuntu。在 Wayland 下,ydotool正在开发一个允许在 Wayland 中模拟按键的工具。Ubuntu 22.04 存储库中的版本较旧,实际上不起作用。但是,您可以编译更新的版本相当容易。我目前不知道是否有 Python 库可以提供pyautoguiWayland 的功能。

相关内容