Linux系统下如何获取鼠标点击坐标?替代win32api的实现方案
替代Windows pywin32的Linux鼠标点击坐标获取方案
我明白你现在的困境——原来依赖pywin32的Windows代码没法在Linux上跑,得找个跨平台的替代方案对吧?刚好pynput这个库完美适配Linux(Windows和macOS也支持),能轻松实现你要的「记录两次鼠标左键点击坐标」的需求,下面是调整后的代码:
from pynput.mouse import Listener posvals = [[], []] click_count = 0 def on_click(x, y, button, pressed): global click_count # 只响应左键按下的动作 if pressed and button == button.left: posvals[click_count] = [x, y] print(f"已记录坐标: {x}, {y}") click_count += 1 # 收集到两次点击后终止监听 if click_count >= 2: return False # 启动鼠标监听 with Listener(on_click=on_click) as listener: listener.join() print(f"最终记录的两次点击坐标: {posvals}")
使用说明
- 先安装依赖库:在终端执行
pip install pynput - 运行代码后,点击屏幕任意位置两次,程序会自动停止并输出记录的坐标
- 代码逻辑和你原来的Windows版本完全对齐:
posvals依然是存储两次点击坐标的二维列表,方便你直接复用后续的处理逻辑
如果需要调整触发条件(比如监听右键、双击等),只需要修改on_click函数里的判断条件即可,非常灵活。
内容的提问来源于stack exchange,提问作者ATP
相关产品推荐
相关产品推荐

