翼度科技»论坛 编程开发 python 查看内容

一文详解如何使用Python实时输出鼠标坐标

6

主题

6

帖子

18

积分

新手上路

Rank: 1

积分
18
前言

在某些应用场景中,我们可能需要实时获取鼠标在屏幕上的坐标信息。Python 的
  1. pynput
复制代码
库提供了一种简单的方法来实现这一功能。本文将介绍如何使用
  1. pynput
复制代码
库来实时输出鼠标的坐标。

安装 pynput 库

在开始之前,确保你已经安装了
  1. pynput
复制代码
库。你可以在终端通过以下命令使用
  1. pip
复制代码
安装它:
  1. pip install pynput
复制代码
实时输出鼠标坐标的 Python 脚本
  1. from pynput import mouse
  2. import time

  3. def on_move(x, y):
  4.     # 处理鼠标移动事件,输出当前坐标
  5.     print(f"Mouse moved to ({x}, {y})")

  6. def on_click(x, y, button, pressed):
  7.     # 当鼠标点击事件发生时,输出点击的信息
  8.     if not pressed:
  9.         print(f"Mouse clicked at ({x}, {y}) with {button}")
  10.         # 当鼠标点击事件发生且松开时,退出监听
  11.         return False

  12. def on_scroll(x, y, dx, dy):
  13.     # 当鼠标滚轮事件发生时,输出滚轮的信息
  14.     print(f"Mouse scrolled at ({x}, {y}) with delta ({dx}, {dy})")

  15. # 设置鼠标监听器
  16. with mouse.Listener(
  17.         on_move=on_move,
  18.         on_click=on_click,
  19.         on_scroll=on_scroll) as listener:
  20.     listener.join()
复制代码
代码解释
  1. on_move(x, y):当鼠标移动时,这个函数会被调用并输出鼠标的新坐标 (x, y)。
  2. on_click(x, y, button, pressed):当鼠标点击事件发生时,这个函数会被调用并输出点击的位置和按钮。如果点击松开(pressed 为 False),则退出监听器。
  3. on_scroll(x, y, dx, dy):当鼠标滚轮事件发生时,这个函数会被调用并输出滚动的位置和滚动的变化量。
复制代码
总结

本文展示了如何使用 Python 的 pynput 库来实时跟踪和输出鼠标坐标。这是一个简单而实用的示例,你可以根据需要扩展或修改代码以适应更复杂的需求。

附:捕获鼠标点击 - 左右键不放过

让来关注如何捕获鼠标的点击事件。通过pynput.mouse.Listener类,可以很容易地监听鼠标的左键和右键点击事件。下面是一个简单的例子,展示了如何捕捉这些事件并打印相关信息:
  1. from pynput import mouse

  2. def on_click(x, y, button, pressed):
  3.     if button == mouse.Button.left:
  4.         print('Left button clicked at ({0}, {1})'.format(x, y))
  5.     elif button == mouse.Button.right:
  6.         print('Right button clicked at ({0}, {1})'.format(x, y))

  7. with mouse.Listener(on_click=on_click) as listener:
  8.     listener.join()
复制代码
运行这段代码,每当你点击鼠标左键或右键时,程序就会输出点击的位置信息。
到此这篇关于使用Python实时输出鼠标坐标的文章就介绍到这了,更多相关Python实时输出鼠标坐标内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

来源:https://www.jb51.net/python/328915ssa.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具