GUI模块
屏幕和鼠标位置
屏幕上的位置由 X 和 Y 笛卡尔坐标表示,坐标。 X 坐标从左侧的 0 开始并增加到右侧。和数学不同,Y 坐标从顶部的 0 开始并增加到底部。
0,0 X increases -->
+---------------------------+
| | Y increases
| | |
| 1920 x 1080 screen | |
| | V
| |
| |
+---------------------------+ 1919, 1079
左上角的像素位于坐标 0, 0。如果您的屏幕分辨率为 1920 x 1080,则在右下角的像素将为 1919, 1079(因为坐标从 0 开始而不是 1)。
屏幕分辨率大小由“size()”函数作为一个元组返回。鼠标的当前 X 和 Y 坐标由“position()”函数返回。
例如:
>>> from pyhutool.gui import Mouse
>>> Mouse.size() # Size(width=1440, height=900)
>>> Mouse.position() # Point(x=293, y=605)
鼠标点击功能
>>> from pyhutool.gui import Mouse
>>> Mouse.click(500, 500)
>>> size = Mouse.size()
>>> position = Mouse.position()
>>> Mouse.leftClick(500, 500)
输入功能
主要的键盘函数是 write()。该函数将键入字符串中的字符。要在每次按下字符键之间添加一个延迟间隔,请传递一个 int 或 float 给 interval 关键字参数。例如:
>>> from pyhutool.gui import Keyboard
>>> Keyboard.typewrite('hello world', 0.2)
press、keyDown 和 keyUp 函数
要按下这些键,请调用 press() 函数并将其传递给来自 pyhutool.KEYBOARD_KEYS 的字符串,例如 enter、esc、f1。例如:
>>> from pyhutool.gui import Keyboard
>>> Keyboard.keyDown('h')
>>> Keyboard.keyUp('h')
>>> Keyboard.press('enter')
热键功能
为了方便按下热键或键盘快捷键,热键() 可以传递多个键字符串,这些键字符串将按顺序按下,然后在反向释放。这段代码:
>>> from pyhutool.gui import Keyboard
>>> Keyboard.hotkey('ctrl', 'shift', 'esc')
截图功能
调用 screenshot() 将返回一个 Image 对象(参见 Pillow 或 PIL模块文档了解详细信息)。传递文件名字符串将屏幕截图保存到文件中,并将其作为 Image 对象返回。
>>> from pyhutool.gui import Screenshot
>>> Screenshot.screenshot('test.png')
>>> Screenshot.screenshot('test.png', region=(0,0, 300, 400))
>>> Screenshot.screenshot('test.png')
>>> Screenshot.screenshot('test.png', region=(0,0, 300, 400))
定位函数
根据特征图像在屏幕中查找坐标
>>> from pyhutool.gui import Screenshot
>>> locate = Screenshot.locateOnScreen('img_1.png')