rpa_mouse_clickInput

模拟鼠标操作元素,该函数可实现其他所有鼠标相关操作

注意:该函数运行时,鼠标操作可能影响结果,若机器人中使用了该API,机器人执行时避免人为操作鼠标

1. 函数

rpa_mouse_clickInput(appId, elementId, button=0, type=0, index=0, waitElement=True, offset=(0, 0), pressed='', keyDown=True, keyUp=True)

  • appId:字符串类型,程序Id
  • elementId:字符串类型,通过捕获元素功能保存的元素Id
  • button: 整数类型,0-左键、1-右键、2-中键、3-移动
  • type:整数类型,0-单击、1-双击、2-按下、3-释放
  • index:整数类型,元素序号,若捕获到的元素存在多个时,标识操作的元素序号,索引从0开始
  • waitElement:bool类型,是否等待元素出现。若值为True,函数先等待元素出现,再执行操作;若值为False,函数直接执行操作。默认等待10秒
  • offset:相对于元素中心点偏移,若该值为(0,0),则滚轮位置为elementId指定元素的中心点
  • pressed:字符串类型,鼠标点击时是否按键,包括control、shift、alt,支持组合,如'control shift'
  • keyDown:按键按下,该参数需与pressed配合使用
  • keyUp:按键释放,该参数需与pressed配合使用

2. 返回值

若执行成功返回True,执行失败返回False,通过rpa_getLastErrorCode()获取错误码,rpa_getLastErrorMsg()获取错误信息。

3. 示例

  • 通过点击咚咚聊天窗口,模拟发送消息
# 连接已启动咚咚
appId = rpa_uia_connectApp(pname='jm_dd_workbench.exe')

# 点击聊天窗口
rectMain = rpa_uia_getElementRect(appId, "咚咚主窗口", index=0, waitElement=True)
rectChat = rpa_uia_getElementRect(appId, "聊天记录窗口", index=0, waitElement=True)
if rectMain is None or rectChat is None:
    rpa_showMsgBox('获取咚咚窗口矩形范围失败!')
    rpa_exit()

# 计算咚咚聊天输入框点击位置
distance = (rectMain.bottom - rectChat.bottom)/2.0
offsety = int(rectChat.height()/2.0 + distance)
rpa_mouse_clickInput(appId, "聊天记录窗口", button=3, type=0, index=0, waitElement=True, offset=(0, offsety))
rpa_mouse_clickInput(appId, "聊天记录窗口", button=0, type=0, index=0, waitElement=True, offset=(0, offsety))

# 从参数中读取内容,写入剪贴板
text = rpa_view_readParam('内容')
rpa_writeClipboard('pin:%s ' % pin + text)

# 发送Ctrl + V按键粘贴
rpa_sendKeys('^v')
rpa_delay(0.5)

# 发送Enter键
rpa_sendKeys('{ENTER}')
rpa_delay(0.5)

其中,【咚咚主窗口】和【聊天记录窗口】为捕获的咚咚窗口元素,如下图:

RECT对象支持的操作参考代码:

# 获取矩形范围,并输出
rect = rpa_uia_getElementRect(appId, "Window1", index=0, waitElement=True)
print(rect)
# 获取宽度
print(rect.width())
# 获取高度
print(rect.height())
# 获取中心点,返回POINT对象
print(rect.mid_point())
# 获取左、上、右、下坐标
print(rect.left)
print(rect.top)
print(rect.right)
print(rect.bottom)

输出结果为:

2021-02-08 16:10:33 [INFO] - (L150, T150, R896, B667)
2021-02-08 16:10:33 [INFO] - 746
2021-02-08 16:10:33 [INFO] - 517
2021-02-08 16:10:33 [INFO] - x 523  y 408
2021-02-08 16:10:33 [INFO] - 150
2021-02-08 16:10:33 [INFO] - 150
2021-02-08 16:10:33 [INFO] - 896
2021-02-08 16:10:33 [INFO] - 667
powered by Gitbook修订时间: 2021-04-15 15:56:54

找到相关内容

    未找到""相关内容

    找到相关内容

      未找到""相关内容