MoRabbit 2022-10-22 16:37 采纳率: 100%
浏览 174
已结题

关于在游戏中使用 pydirectinput.click() 点击滚动条异常现象

pydirectinput.click() 模拟鼠标点击滚动条出现异常现象

import pydirectinput, time

time.sleep(3)
pydirectinput.click()

点击这个位置

img


使用鼠标点击滚动条在这个位置

img


使用 pydirectinput.click() 滚动条跑到了最底部

img

求解决这个问题,还有为什么会出现这种问题?

  • 写回答

1条回答 默认 最新

  • m0_64562067 2022-10-22 18:35
    关注

    安装pyautogui库试一下
    import pyautogui

    获取当前屏幕分辨率

    screenWidth, screenHeight = pyautogui.size()

    获取当前鼠标位置

    currentMouseX, currentMouseY = pyautogui.position()

    2秒钟鼠标移动坐标为100,100位置 绝对移动

    #pyautogui.moveTo(100, 100,2)
    pyautogui.moveTo(x=100, y=100,duration=2, tween=pyautogui.linear)

    #鼠标移到屏幕中央。
    pyautogui.moveTo(screenWidth / 2, screenHeight / 2)

    鼠标左击一次

    #pyautogui.click()

    x

    y

    clicks 点击次数

    interval点击之间的间隔

    button 'left', 'middle', 'right' 对应鼠标 左 中 右或者取值(1, 2, or 3)

    tween 渐变函数

    pyautogui.click(x=None, y=None, clicks=1, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear)

    鼠标相对移动 ,向下移动

    #pyautogui.moveRel(None, 10)
    pyautogui.moveRel(xOffset=None, yOffset=10,duration=0.0, tween=pyautogui.linear)

    鼠标当前位置0间隔双击

    #pyautogui.doubleClick()
    pyautogui.doubleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear)

    鼠标当前位置3击

    #pyautogui.tripleClick()
    pyautogui.tripleClick(x=None, y=None, interval=0.0, button='left', duration=0.0, tween=pyautogui.linear)

    #右击
    pyautogui.rightClick()

    #中击
    pyautogui.middleClick()

    用缓动/渐变函数让鼠标2秒后移动到(500,500)位置

    use tweening/easing function to move mouse over 2 seconds.

    pyautogui.moveTo(x=500, y=500, duration=2, tween=pyautogui.easeInOutQuad)

    #鼠标拖拽
    pyautogui.dragTo(x=427, y=535, duration=3,button='left')

    #鼠标相对拖拽
    pyautogui.dragRel(xOffset=100,yOffset=100,duration=,button='left',mouseDownUp=False)

    #鼠标移动到x=1796, y=778位置按下
    pyautogui.mouseDown(x=1796, y=778, button='left')

    #鼠标移动到x=2745, y=778位置松开(与mouseDown组合使用选中)
    pyautogui.mouseUp(x=2745, y=778, button='left',duration=5)

    #鼠标当前位置滚轮滚动
    pyautogui.scroll()
    #鼠标水平滚动(Linux)
    pyautogui.hscroll()
    #鼠标左右滚动(Linux)
    pyautogui.vscroll()

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 11月4日
  • 已采纳回答 10月27日
  • 创建了问题 10月22日

悬赏问题

  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊
  • ¥15 安装svn网络有问题怎么办