目录
控件的操作
点击
文本
编辑
鼠标操作
获取坐标
编辑
mouse模块
只有认知的突破💫才能带来真正的成长💫编程技术的学习💫没有捷径💫一起加油💫

🍁感谢各位的观看🍁欢迎大家留言🍁咱们一起加油🍁努力成为更好的自己🍁
控件的操作
点击
-
函数:click_input(),模拟鼠标的左键
import time
from pywinauto import Application
App=Application(backend='uia')
App.connect(process=42444)
win=App.window(title_re=".*Notepad.*")
win.wait("exists")
min=win.child_window(title="最大化", control_type="Button")
min.click_input()
print("窗口放大")
time.sleep(2)
win.restore()
print("窗口恢复")
如下所示的运行结果。
-
函数:right_click_input(),模拟鼠标的右键
- import time
from pywinauto import Application
App=Application(backend='uia')
App.connect(process=42444)
win=App.window(title_re=".*Notepad.*")
win.wait("exists")min=win.child_window(title="最大化", control_type="Button")
min.right_click_input()
print("鼠标右键")
如下图所示的运行结果。
-
函数:double_click_input(),模拟鼠标的双击操作
import time
from pywinauto import Application
App=Application(backend='uia')
App.connect(process=42444)
win=App.window(title_re=".*Notepad.*")
win.wait("exists")
min=win.child_window(title="加粗(Ctrl+B)", control_type="Button")
min.double_click_input()
print("双击操作")

-
扩展
这些点击函数还可以通过coords=(x,y)参数,传个元组坐标来定位,不需使用元素自己的点击方法。举例一个即可,其它亦如此。
import time
from pywinauto import Application
App=Application(backend='uia')
App.connect(process=42444)
win=App.window(title_re=".*Notepad.*")
# 1. 左键单击:指定坐标(222,444)
win.click_input(coords=(222, 444))
time.sleep(1) # 间隔1秒,避免操作过快
# 2. 右键单击:指定坐标(222,444)
win.right_click_input(coords=(222, 444))
time.sleep(1)
# 3. 左键双击:指定坐标(222,444)
win.double_click_input(coords=(222, 444))
文本
-
函数:texts(),获取窗口或控件的文本信息。
import time
from pywinauto import Application
App=Application(backend='uia')
App.connect(process=42444)
win=App.window(title_re=".*Notepad.*")
win.wait("exists")
min=win.child_window(title="加粗(Ctrl+B)", control_type="Button")
print(min.texts())
鼠标操作
获取坐标
函数:rectangle(),获取元素的左上角和右下角的坐标,返回left,top,right,bottom属性。
from pywinauto import Application
App=Application(backend='uia')
App.connect(process=42444)
win=App.window(title_re=".*Notepad.*")
win.wait("exists")
point=win.rectangle()
print(point)

如下图所示的left,top,right,bottom属性。
函数:mid_point(),把获取到的rectangle坐标,转为这个元素的中点坐标。
import time
from pywinauto import Application
App=Application(backend='uia')
App.connect(process=42444)
win=App.window(title_re=".*Notepad.*")
win.wait("exists")
point=win.rectangle()
mid=point.mid_point()
print(mid)
mouse模块
mouse模块常用的操作如下表所示。
|
方法 |
功能描述 |
|
mouse.click(button='left', coords=(0, 0)) |
单击指定的坐标 |
|
mouse.scroll(coords=(0, 0), wheel_dist=1) |
指定位置滚动鼠标滚轮,wheel_dist表示滚动的距离,大于0是向上滚动,小于0是向下滑动。 |
|
mouse.double_click(button='left', coords=(0, 0)) |
双击指定的坐标 |
|
mouse.right_click(coords=(0, 0)) |
右键单击指定的坐标 |
|
mouse.move(coords=(0, 0)) |
移动⿏标到指定坐标 |
|
mouse.wheel_click(coords=(0, 0)) |
⿏标中键单击指定的坐标 |
|
mouse.press(button='left', coords=(0, 0)) |
按下⿏标按钮 |
|
mouse.release(button='left', coords=(0, 0)) |
释放⿏标按钮 |
举例个滚动的例子
import time
from pywinauto import Application
from pywinauto import mouse
App=Application(backend='uia')
App.connect(process=42444)
win=App.window(title_re=".*Notepad.*")
win.wait("exists")
point=win.rectangle()
mid=point.mid_point()
mouse.click(button="left",coords=(mid.x,mid.y))
time.sleep(2)
mouse.scroll(coords=(mid.x,mid.y),wheel_dist=10)
time.sleep(2)
mouse.scroll(coords=(mid.x,mid.y),wheel_dist=-10)
网硕互联帮助中心








评论前必须登录!
注册