跨OS香草Python鼠标获取/设置

时间:2015-07-31 16:52:15

标签: python cross-platform mouse

使用Python 2.7.10及更高版本,有没有办法只使用预先安装的库(没有pygame,PyUserInput,Xlib,PyQt,pyautogui,PyMouse等)来检索和设置绝对鼠标位置?

  • 这也适用于所有操作系统(Linux,Mac,Windows)。
  • 解决方案必须适用于最新版本的Python,以及2.7.10
  • 我也不能让用户在弹出窗口中进行交互,因为它不是相对的,用户仍然需要能够与其他窗口进行交互。
  • 另外,如果可能的话有办法取消鼠标事件触发的默认操作(如JavaScript中的e.preventDefault())?

如果键盘事件拦截/模拟也可以满足相同的要求,那么还有额外的荣誉。

1 个答案:

答案 0 :(得分:1)

确保假设您可以首先针对每个操作系统以特定于操作系统的方式执行此操作

def getMouseCoords():
    if "Windows" in platform.uname():
       return get_windows_mouse()
    elif os.path.exists("/dev/input/mouse"):
       return parse_filesys_mouse()
    elif some_otheros_condition:
       return get_some_other_os_mouse()

你必须粗略地找出一个特定于操作系统的方法来完成你想要交叉支持的每个操作系统的任务......

设置它们可能会更复杂......

否决这些事件可能会非常困难

没有通用的输入事件方式,因为每个操作系统都以不同的方式实现

粗略的这是一个非常重要的任务,幸运的是人们已经构建了像 PyMouse 这样的库来为你做这个....我想你可以复制并粘贴他们所有的代码,但是除了按预期使用库之外,有什么不同?